ConscryptEngine that adapts to the new Java 9 (and potentially later
patches of 8) setHandshakeApplicationProtocolSelector API (which requires Java 8 for
compilation, due to the use of BiFunction).
| Modifier and Type | Field and Description |
|---|---|
| private final ConscryptEngine | |
| private BiFunction |
| Access | Constructor and Description |
|---|---|
| pack-priv |
| Modifier and Type | Method and Description |
|---|---|
| public void | beginHandshake()
Implements abstract javax. |
| public void | closeInbound()
Implements abstract javax. SSLEngine.
|
| public void | closeOutbound()
Implements abstract javax. SSLEngine.
|
| pack-priv byte[] | exportKeyingMaterial(String
the label to use in calculating the exported value. This must be
an ASCII-only string. label, byte[] the application-specific context value to use in calculating the
exported value. This may be context, int null to use no application context, which is
treated differently than an empty byte array.the number of bytes of keying material to return. length)Implements abstract org. |
| public String | getApplicationProtocol()
Implements abstract org. |
| pack-priv String[] | getApplicationProtocols()
Implements abstract org. |
| pack-priv byte[] | getChannelId()
Implements abstract org. |
| pack-priv static SSLEngine | |
| public Runnable | getDelegatedTask()
Implements abstract javax. Runnable task for
this SSLEngine.
|
| public String[] | getEnabledCipherSuites()
Implements abstract javax. |
| public String[] | getEnabledProtocols()
Implements abstract javax. SSLEngine.
|
| public boolean | getEnableSessionCreation()
Implements abstract javax. |
| public String | getHandshakeApplicationProtocol()
Implements abstract org. |
| public BiFunction | getHandshakeApplicationProtocolSelector()
Overrides javax. |
| public SSLEngineResult. | getHandshakeStatus()
Implements abstract javax. SSLEngine.
|
| pack-priv String | getHostname()
Implements abstract org. setHostname(String) or supplied by the
PeerInfoProvider upon creation.
|
| public boolean | getNeedClientAuth()
Implements abstract javax. |
| public String | getPeerHost()
Implements abstract org. |
| public int | getPeerPort()
Implements abstract org. |
| public SSLSession | getSession()
Implements abstract javax. SSLSession in use in this
SSLEngine.
|
| public SSLParameters | getSSLParameters()
Overrides javax. |
| public String[] | getSupportedCipherSuites()
Implements abstract javax. |
| public String[] | getSupportedProtocols()
Implements abstract javax. SSLEngine.
|
| pack-priv byte[] | getTlsUnique()
Implements abstract org. |
| public boolean | getUseClientMode()
Implements abstract javax. |
| public boolean | getWantClientAuth()
Implements abstract javax. |
| pack-priv SSLSession | handshakeSession()
Implements abstract org. |
| public boolean | isInboundDone()
Implements abstract javax. unwrap(ByteBuffer, ByteBuffer) will
accept any more inbound data messages.
|
| public boolean | isOutboundDone()
Implements abstract javax. wrap(ByteBuffer, ByteBuffer) will
produce any more outbound data messages.
|
| pack-priv int | maxSealOverhead()
Implements abstract org. |
| pack-priv void | setApplicationProtocols(String[]
the list of ALPN protocols protocols)Implements abstract org. |
| pack-priv void | setApplicationProtocolSelector(ApplicationProtocolSelector selector)
Implements abstract org. |
| pack-priv void | setBufferAllocator(BufferAllocator bufferAllocator)
Implements abstract org. |
| pack-priv void | setChannelIdEnabled(boolean enabled)
Implements abstract org. |
| pack-priv void | setChannelIdPrivateKey(PrivateKey
private key (enables TLS Channel ID) or privateKey)null for no key (disables
TLS Channel ID). The private key must be an Elliptic Curve (EC) key based on the NIST
P-256 curve (aka SECG secp256r1 or ANSI X9.62 prime256v1).Implements abstract org. PrivateKey to be used for TLS Channel ID by this client engine.
|
| public void | setEnabledCipherSuites(String[]
Names of all the cipher suites to enable suites)Implements abstract javax. |
| public void | setEnabledProtocols(String[]
Names of all the protocols to enable. protocols)Implements abstract javax. |
| public void | setEnableSessionCreation(boolean
true indicates that sessions may be created; this
is the default. false indicates that an existing session
must be resumed flag)Implements abstract javax. |
| public void | setHandshakeApplicationProtocolSelector(final BiFunction<SSLEngine, List<String>, String>
the callback function, or null to disable the callback
functionality. selector)Overrides javax. |
| pack-priv void | setHandshakeListener(HandshakeListener handshakeListener)
Implements abstract org. |
| pack-priv void | setHostname(String hostname)
Implements abstract org. PeerInfoProvider
supplied during engine creation.
|
| public void | setNeedClientAuth(boolean
set to true if client authentication is required,
or false if no client authentication is desired. need)Implements abstract javax. |
| public void | setSSLParameters(SSLParameters
the parameters sslParameters)Overrides javax. |
| public void | setUseClientMode(boolean
true if the engine should start its handshaking
in "client" mode mode)Implements abstract javax. |
| pack-priv void | setUseSessionTickets(boolean
True to enable session tickets useSessionTickets)Implements abstract org. |
| public void | setWantClientAuth(boolean
set to true if client authentication is requested,
or false if no client authentication is desired. want)Implements abstract javax. |
| private static ApplicationProtocolSelector | |
| public SSLEngineResult | unwrap(ByteBuffer
a src, ByteBuffer ByteBuffer containing inbound network data.a dst)ByteBuffer to hold inbound application data.Implements abstract org. |
| public SSLEngineResult | unwrap(ByteBuffer
a src, ByteBuffer[] ByteBuffer containing inbound network data.an array of dsts)ByteBuffers to hold inbound
application data.Implements abstract org. |
| public SSLEngineResult | unwrap(ByteBuffer
a src, ByteBuffer[] ByteBuffer containing inbound network data.an array of dsts, int ByteBuffers to hold inbound
application data.The offset within the buffer array of the first buffer from
which bytes are to be transferred; it must be non-negative
and no larger than offset, int dsts.length.The maximum number of buffers to be accessed; it must be
non-negative and no larger than
length)dsts.length - offset.Implements abstract org. |
| pack-priv SSLEngineResult | unwrap(ByteBuffer[] srcs, ByteBuffer[] dsts)
Implements abstract org. |
| pack-priv SSLEngineResult | unwrap(ByteBuffer[] srcs, int srcsOffset, int srcsLength, ByteBuffer[] dsts, int dstsOffset, int dstsLength)
Implements abstract org. |
| public SSLEngineResult | wrap(ByteBuffer[]
an array of byteBuffers, ByteBuffer ByteBuffers containing the
outbound application dataa byteBuffer)ByteBuffer to hold outbound network dataOverrides javax. |
| public SSLEngineResult | wrap(ByteBuffer
a src, ByteBuffer ByteBuffer containing outbound application dataa dst)ByteBuffer to hold outbound network dataImplements abstract org. |
| public SSLEngineResult | wrap(ByteBuffer[]
an array of srcs, int ByteBuffers containing the
outbound application dataThe offset within the buffer array of the first buffer from
which bytes are to be retrieved; it must be non-negative
and no larger than srcsOffset, int srcs.lengthThe maximum number of buffers to be accessed; it must be
non-negative and no larger than
srcsLength, ByteBuffer srcs.length - offseta dst)ByteBuffer to hold outbound network dataImplements abstract org. |