Package org.jboss.netty.handler.ssl
Class OpenSslServerContext
- java.lang.Object
-
- org.jboss.netty.handler.ssl.SslContext
-
- org.jboss.netty.handler.ssl.OpenSslServerContext
-
public final class OpenSslServerContext extends SslContext
A server-sideSslContextwhich uses OpenSSL's SSL/TLS implementation.
-
-
Constructor Summary
Constructors Constructor Description OpenSslServerContext(File certChainFile, File keyFile)Creates a new instance.OpenSslServerContext(File certChainFile, File keyFile, String keyPassword)Creates a new instance.OpenSslServerContext(SslBufferPool bufPool, File certChainFile, File keyFile, String keyPassword, Iterable<String> ciphers, Iterable<String> nextProtocols, long sessionCacheSize, long sessionTimeout)Creates a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<String>cipherSuites()Returns the list of enabled cipher suites, in the order of preference.longcontext()Returns theSSL_CTXobject of this context.protected voidfinalize()booleanisClient()Returns thetrueif and only if this context is for client-side.SSLEnginenewEngine()Returns a new server-sideSSLEnginewith the current configuration.SSLEnginenewEngine(String peerHost, int peerPort)Creates a newSSLEngineusing advisory peer information.List<String>nextProtocols()Returns the list of application layer protocols for the TLS NPN/ALPN extension, in the order of preference.longsessionCacheSize()Returns the size of the cache used for storing SSL session objects.longsessionTimeout()Returns the timeout for the cached SSL session objects, in seconds.voidsetTicketKeys(byte[] keys)Sets the SSL session ticket keys of this context.OpenSslSessionStatsstats()Returns the stats of this context.-
Methods inherited from class org.jboss.netty.handler.ssl.SslContext
bufferPool, defaultClientProvider, defaultServerProvider, isServer, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newClientContext, newHandler, newHandler, newServerContext, newServerContext, newServerContext, newServerContext, newServerContext, newServerContext
-
-
-
-
Constructor Detail
-
OpenSslServerContext
public OpenSslServerContext(File certChainFile, File keyFile) throws SSLException
Creates a new instance.- Parameters:
certChainFile- an X.509 certificate chain file in PEM formatkeyFile- a PKCS#8 private key file in PEM format- Throws:
SSLException
-
OpenSslServerContext
public OpenSslServerContext(File certChainFile, File keyFile, String keyPassword) throws SSLException
Creates a new instance.- Parameters:
certChainFile- an X.509 certificate chain file in PEM formatkeyFile- a PKCS#8 private key file in PEM formatkeyPassword- the password of thekeyFile.nullif it's not password-protected.- Throws:
SSLException
-
OpenSslServerContext
public OpenSslServerContext(SslBufferPool bufPool, File certChainFile, File keyFile, String keyPassword, Iterable<String> ciphers, Iterable<String> nextProtocols, long sessionCacheSize, long sessionTimeout) throws SSLException
Creates a new instance.- Parameters:
bufPool- the buffer pool which will be used by this context.nullto use the default buffer pool.certChainFile- an X.509 certificate chain file in PEM formatkeyFile- a PKCS#8 private key file in PEM formatkeyPassword- the password of thekeyFile.nullif it's not password-protected.ciphers- the cipher suites to enable, in the order of preference.nullto use the default cipher suites.nextProtocols- the application layer protocols to accept, in the order of preference.nullto disable TLS NPN/ALPN extension.sessionCacheSize- the size of the cache used for storing SSL session objects.0to use the default value.sessionTimeout- the timeout for the cached SSL session objects, in seconds.0to use the default value.- Throws:
SSLException
-
-
Method Detail
-
isClient
public boolean isClient()
Description copied from class:SslContextReturns thetrueif and only if this context is for client-side.- Specified by:
isClientin classSslContext
-
cipherSuites
public List<String> cipherSuites()
Description copied from class:SslContextReturns the list of enabled cipher suites, in the order of preference.- Specified by:
cipherSuitesin classSslContext
-
sessionCacheSize
public long sessionCacheSize()
Description copied from class:SslContextReturns the size of the cache used for storing SSL session objects.- Specified by:
sessionCacheSizein classSslContext
-
sessionTimeout
public long sessionTimeout()
Description copied from class:SslContextReturns the timeout for the cached SSL session objects, in seconds.- Specified by:
sessionTimeoutin classSslContext
-
nextProtocols
public List<String> nextProtocols()
Description copied from class:SslContextReturns the list of application layer protocols for the TLS NPN/ALPN extension, in the order of preference.- Specified by:
nextProtocolsin classSslContext- Returns:
- the list of application layer protocols.
nullif NPN/ALPN extension has been disabled.
-
context
public long context()
Returns theSSL_CTXobject of this context.
-
stats
public OpenSslSessionStats stats()
Returns the stats of this context.
-
newEngine
public SSLEngine newEngine()
Returns a new server-sideSSLEnginewith the current configuration.- Specified by:
newEnginein classSslContext- Returns:
- a new
SSLEngine
-
newEngine
public SSLEngine newEngine(String peerHost, int peerPort)
Description copied from class:SslContextCreates a newSSLEngineusing advisory peer information.- Specified by:
newEnginein classSslContext- Parameters:
peerHost- the non-authoritative name of the hostpeerPort- the non-authoritative port- Returns:
- a new
SSLEngine
-
setTicketKeys
public void setTicketKeys(byte[] keys)
Sets the SSL session ticket keys of this context.
-
-