Home / Function/ SSLEngine() — netty Function Reference

SSLEngine() — netty Function Reference

Architecture documentation for the SSLEngine() function in JdkAlpnApplicationProtocolNegotiator.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  c262cf8f_ab12_c8ee_406c_a496cbd32aab["SSLEngine()"]
  6379d8e2_1f92_9548_3e09_e26aace3be1f["AlpnWrapper"]
  c262cf8f_ab12_c8ee_406c_a496cbd32aab -->|defined in| 6379d8e2_1f92_9548_3e09_e26aace3be1f
  ec9f07fb_1969_c9b7_cfbf_ba5af96abe8e["isAlpnSupported()"]
  c262cf8f_ab12_c8ee_406c_a496cbd32aab -->|calls| ec9f07fb_1969_c9b7_cfbf_ba5af96abe8e
  style c262cf8f_ab12_c8ee_406c_a496cbd32aab fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

handler/src/main/java/io/netty/handler/ssl/JdkAlpnApplicationProtocolNegotiator.java lines 128–147

        @Override
        public SSLEngine wrapSslEngine(SSLEngine engine, ByteBufAllocator alloc,
                                       JdkApplicationProtocolNegotiator applicationNegotiator, boolean isServer) {
            if (Conscrypt.isEngineSupported(engine)) {
                return isServer ? ConscryptAlpnSslEngine.newServerEngine(engine, alloc, applicationNegotiator)
                        : ConscryptAlpnSslEngine.newClientEngine(engine, alloc, applicationNegotiator);
            }
            if (BouncyCastleUtil.isBcJsseInUse(engine) && BouncyCastleAlpnSslUtils.isAlpnSupported()) {
                return new BouncyCastleAlpnSslEngine(engine, applicationNegotiator, isServer);
            }
            // ALPN support was recently backported to Java8 as
            // https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8230977.
            // Because of this lets not do a Java version runtime check but just depend on if the required methods are
            // present
            if (JdkAlpnSslUtils.supportsAlpn()) {
                return new JdkAlpnSslEngine(engine, applicationNegotiator, isServer);
            }
            throw new UnsupportedOperationException("ALPN not supported. Unable to wrap SSLEngine of type '"
                    + engine.getClass().getName() + "')");
        }

Domain

Subdomains

Frequently Asked Questions

What does SSLEngine() do?
SSLEngine() is a function in the netty codebase, defined in handler/src/main/java/io/netty/handler/ssl/JdkAlpnApplicationProtocolNegotiator.java.
Where is SSLEngine() defined?
SSLEngine() is defined in handler/src/main/java/io/netty/handler/ssl/JdkAlpnApplicationProtocolNegotiator.java at line 128.
What does SSLEngine() call?
SSLEngine() calls 1 function(s): isAlpnSupported.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free