Package io.ably.lib.transport
Class SafeSSLSocketFactory
java.lang.Object
javax.net.SocketFactory
javax.net.ssl.SSLSocketFactory
io.ably.lib.transport.SafeSSLSocketFactory
public class SafeSSLSocketFactory
extends javax.net.ssl.SSLSocketFactory
This is a decorator for the
SSLSocketFactory which modifies the enabled TLS protocols
for each created SSLSocket to only use the protocols which are considered to be safe.
This class was created because the SSLContext.getInstance() method does not allow specifying
precisely which TLS protocols can be used and which cannot.
-
Constructor Summary
Constructors Constructor Description SafeSSLSocketFactory(javax.net.ssl.SSLSocketFactory factory) -
Method Summary
Modifier and Type Method Description java.net.SocketcreateSocket()java.net.SocketcreateSocket(java.lang.String host, int port)java.net.SocketcreateSocket(java.lang.String host, int port, java.net.InetAddress localHost, int localPort)java.net.SocketcreateSocket(java.net.InetAddress host, int port)java.net.SocketcreateSocket(java.net.InetAddress address, int port, java.net.InetAddress localAddress, int localPort)java.net.SocketcreateSocket(java.net.Socket socket, java.lang.String host, int port, boolean autoClose)java.lang.String[]getDefaultCipherSuites()java.lang.String[]getSupportedCipherSuites()
-
Constructor Details
-
SafeSSLSocketFactory
public SafeSSLSocketFactory(javax.net.ssl.SSLSocketFactory factory)
-
-
Method Details
-
getDefaultCipherSuites
public java.lang.String[] getDefaultCipherSuites()- Specified by:
getDefaultCipherSuitesin classjavax.net.ssl.SSLSocketFactory
-
getSupportedCipherSuites
public java.lang.String[] getSupportedCipherSuites()- Specified by:
getSupportedCipherSuitesin classjavax.net.ssl.SSLSocketFactory
-
createSocket
public java.net.Socket createSocket() throws java.io.IOException- Overrides:
createSocketin classjavax.net.SocketFactory- Throws:
java.io.IOException
-
createSocket
public java.net.Socket createSocket(java.net.Socket socket, java.lang.String host, int port, boolean autoClose) throws java.io.IOException- Specified by:
createSocketin classjavax.net.ssl.SSLSocketFactory- Throws:
java.io.IOException
-
createSocket
public java.net.Socket createSocket(java.lang.String host, int port) throws java.io.IOException, java.net.UnknownHostException- Specified by:
createSocketin classjavax.net.SocketFactory- Throws:
java.io.IOExceptionjava.net.UnknownHostException
-
createSocket
public java.net.Socket createSocket(java.lang.String host, int port, java.net.InetAddress localHost, int localPort) throws java.io.IOException, java.net.UnknownHostException- Specified by:
createSocketin classjavax.net.SocketFactory- Throws:
java.io.IOExceptionjava.net.UnknownHostException
-
createSocket
public java.net.Socket createSocket(java.net.InetAddress host, int port) throws java.io.IOException- Specified by:
createSocketin classjavax.net.SocketFactory- Throws:
java.io.IOException
-
createSocket
public java.net.Socket createSocket(java.net.InetAddress address, int port, java.net.InetAddress localAddress, int localPort) throws java.io.IOException- Specified by:
createSocketin classjavax.net.SocketFactory- Throws:
java.io.IOException
-