public class ALPNLimitingSSLEngine
extends javax.net.ssl.SSLEngine
In theory this is not a perfect solution to the HTTP/2 cipher strength issue, but in practice it should be sufficent as any RFC compliant implementation should be able to negotiate TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
| Constructor | Description |
|---|---|
ALPNLimitingSSLEngine(javax.net.ssl.SSLEngine delegate,
java.lang.Runnable invalidAlpnRunnable) |
| Modifier and Type | Method | Description |
|---|---|---|
void |
beginHandshake() |
|
void |
closeInbound() |
|
void |
closeOutbound() |
|
java.lang.Runnable |
getDelegatedTask() |
|
java.lang.String[] |
getEnabledCipherSuites() |
|
java.lang.String[] |
getEnabledProtocols() |
|
boolean |
getEnableSessionCreation() |
|
javax.net.ssl.SSLSession |
getHandshakeSession() |
|
javax.net.ssl.SSLEngineResult.HandshakeStatus |
getHandshakeStatus() |
|
boolean |
getNeedClientAuth() |
|
java.lang.String |
getPeerHost() |
|
int |
getPeerPort() |
|
javax.net.ssl.SSLSession |
getSession() |
|
javax.net.ssl.SSLParameters |
getSSLParameters() |
|
java.lang.String[] |
getSupportedCipherSuites() |
|
java.lang.String[] |
getSupportedProtocols() |
|
boolean |
getUseClientMode() |
|
boolean |
getWantClientAuth() |
|
boolean |
isInboundDone() |
|
boolean |
isOutboundDone() |
|
void |
setEnabledCipherSuites(java.lang.String[] strings) |
|
void |
setEnabledProtocols(java.lang.String[] strings) |
|
void |
setEnableSessionCreation(boolean b) |
|
void |
setNeedClientAuth(boolean b) |
|
void |
setSSLParameters(javax.net.ssl.SSLParameters sslParameters) |
|
void |
setUseClientMode(boolean b) |
|
void |
setWantClientAuth(boolean b) |
|
javax.net.ssl.SSLEngineResult |
unwrap(java.nio.ByteBuffer src,
java.nio.ByteBuffer dst) |
|
javax.net.ssl.SSLEngineResult |
unwrap(java.nio.ByteBuffer src,
java.nio.ByteBuffer[] dsts) |
|
javax.net.ssl.SSLEngineResult |
unwrap(java.nio.ByteBuffer byteBuffer,
java.nio.ByteBuffer[] byteBuffers,
int i,
int i1) |
|
javax.net.ssl.SSLEngineResult |
wrap(java.nio.ByteBuffer[] srcs,
int off,
int len,
java.nio.ByteBuffer dst) |
|
javax.net.ssl.SSLEngineResult |
wrap(java.nio.ByteBuffer[] srcs,
java.nio.ByteBuffer dst) |
|
javax.net.ssl.SSLEngineResult |
wrap(java.nio.ByteBuffer src,
java.nio.ByteBuffer dst) |
public ALPNLimitingSSLEngine(javax.net.ssl.SSLEngine delegate,
java.lang.Runnable invalidAlpnRunnable)
public java.lang.String getPeerHost()
getPeerHost in class javax.net.ssl.SSLEnginepublic int getPeerPort()
getPeerPort in class javax.net.ssl.SSLEnginepublic javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer src,
java.nio.ByteBuffer dst)
throws javax.net.ssl.SSLException
wrap in class javax.net.ssl.SSLEnginejavax.net.ssl.SSLExceptionpublic javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer[] srcs,
java.nio.ByteBuffer dst)
throws javax.net.ssl.SSLException
wrap in class javax.net.ssl.SSLEnginejavax.net.ssl.SSLExceptionpublic javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer src,
java.nio.ByteBuffer dst)
throws javax.net.ssl.SSLException
unwrap in class javax.net.ssl.SSLEnginejavax.net.ssl.SSLExceptionpublic javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer src,
java.nio.ByteBuffer[] dsts)
throws javax.net.ssl.SSLException
unwrap in class javax.net.ssl.SSLEnginejavax.net.ssl.SSLExceptionpublic javax.net.ssl.SSLSession getHandshakeSession()
getHandshakeSession in class javax.net.ssl.SSLEnginepublic javax.net.ssl.SSLParameters getSSLParameters()
getSSLParameters in class javax.net.ssl.SSLEnginepublic void setSSLParameters(javax.net.ssl.SSLParameters sslParameters)
setSSLParameters in class javax.net.ssl.SSLEnginepublic javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer[] srcs,
int off,
int len,
java.nio.ByteBuffer dst)
throws javax.net.ssl.SSLException
wrap in class javax.net.ssl.SSLEnginejavax.net.ssl.SSLExceptionpublic javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer byteBuffer,
java.nio.ByteBuffer[] byteBuffers,
int i,
int i1)
throws javax.net.ssl.SSLException
unwrap in class javax.net.ssl.SSLEnginejavax.net.ssl.SSLExceptionpublic java.lang.Runnable getDelegatedTask()
getDelegatedTask in class javax.net.ssl.SSLEnginepublic void closeInbound()
throws javax.net.ssl.SSLException
closeInbound in class javax.net.ssl.SSLEnginejavax.net.ssl.SSLExceptionpublic boolean isInboundDone()
isInboundDone in class javax.net.ssl.SSLEnginepublic void closeOutbound()
closeOutbound in class javax.net.ssl.SSLEnginepublic boolean isOutboundDone()
isOutboundDone in class javax.net.ssl.SSLEnginepublic java.lang.String[] getSupportedCipherSuites()
getSupportedCipherSuites in class javax.net.ssl.SSLEnginepublic java.lang.String[] getEnabledCipherSuites()
getEnabledCipherSuites in class javax.net.ssl.SSLEnginepublic void setEnabledCipherSuites(java.lang.String[] strings)
setEnabledCipherSuites in class javax.net.ssl.SSLEnginepublic java.lang.String[] getSupportedProtocols()
getSupportedProtocols in class javax.net.ssl.SSLEnginepublic java.lang.String[] getEnabledProtocols()
getEnabledProtocols in class javax.net.ssl.SSLEnginepublic void setEnabledProtocols(java.lang.String[] strings)
setEnabledProtocols in class javax.net.ssl.SSLEnginepublic javax.net.ssl.SSLSession getSession()
getSession in class javax.net.ssl.SSLEnginepublic void beginHandshake()
throws javax.net.ssl.SSLException
beginHandshake in class javax.net.ssl.SSLEnginejavax.net.ssl.SSLExceptionpublic javax.net.ssl.SSLEngineResult.HandshakeStatus getHandshakeStatus()
getHandshakeStatus in class javax.net.ssl.SSLEnginepublic void setUseClientMode(boolean b)
setUseClientMode in class javax.net.ssl.SSLEnginepublic boolean getUseClientMode()
getUseClientMode in class javax.net.ssl.SSLEnginepublic void setNeedClientAuth(boolean b)
setNeedClientAuth in class javax.net.ssl.SSLEnginepublic boolean getNeedClientAuth()
getNeedClientAuth in class javax.net.ssl.SSLEnginepublic void setWantClientAuth(boolean b)
setWantClientAuth in class javax.net.ssl.SSLEnginepublic boolean getWantClientAuth()
getWantClientAuth in class javax.net.ssl.SSLEnginepublic void setEnableSessionCreation(boolean b)
setEnableSessionCreation in class javax.net.ssl.SSLEnginepublic boolean getEnableSessionCreation()
getEnableSessionCreation in class javax.net.ssl.SSLEngineCopyright © 2018. All rights reserved.