/** * Configure socket with SSL parameters. * * @param socket Socket to configure. * @return Configured socket. */ private Socket configureSocket(Socket socket) { if (parameters != null) ((SSLSocket)socket).setSSLParameters(parameters); return socket; }
default void setSSLParameters(SSLContext sslContext, SSLSocket sslSocket, SSLParameters parameters) { sslSocket.setSSLParameters(parameters); }
public void setSSLParameters(final SSLParameters params) { delegate.setSSLParameters(params); }
protected Socket buildSocket(String host, int port) throws IOException { // both SocketFactory and SSLSocketFactory return abstract class Socket // on createSocket calls, unfortunately we need to configure // SSLSocket with SSLParameters, so we need to check if the socket is // and instance of SSLSocket or not before we cast and modify sock=socket_factory.createSocket(host, port); if (sock instanceof SSLSocket && this.sslParameters != null) { ((SSLSocket) sock).setSSLParameters(this.sslParameters); } return sock; }
@Override public void configureTlsExtensions(SSLSocket sslSocket, String hostname, List<Protocol> protocols) { try { SSLParameters sslParameters = sslSocket.getSSLParameters(); List<String> names = alpnProtocolNames(protocols); setProtocolMethod.invoke(sslParameters, new Object[] {names.toArray(new String[names.size()])}); sslSocket.setSSLParameters(sslParameters); } catch (IllegalAccessException | InvocationTargetException e) { throw new AssertionError("failed to set SSL parameters", e); } }
@Override public void configureTlsExtensions(SSLSocket sslSocket, String hostname, List<Protocol> protocols) { try { SSLParameters sslParameters = sslSocket.getSSLParameters(); List<String> names = alpnProtocolNames(protocols); setProtocolMethod.invoke(sslParameters, new Object[] {names.toArray(new String[names.size()])}); sslSocket.setSSLParameters(sslParameters); } catch (IllegalAccessException | InvocationTargetException e) { throw assertionError("unable to set ssl parameters", e); } }
@Override public void configureTlsExtensions(SSLSocket sslSocket, String hostname, List<Protocol> protocols) { try { SSLParameters sslParameters = sslSocket.getSSLParameters(); List<String> names = alpnProtocolNames(protocols); setProtocolMethod.invoke(sslParameters, new Object[] {names.toArray(new String[names.size()])}); sslSocket.setSSLParameters(sslParameters); } catch (IllegalAccessException | InvocationTargetException e) { throw new AssertionError("failed to set SSL parameters", e); } }
private static TSocket getSSLSocketWithHttps(TSocket tSSLSocket) throws TTransportException { SSLSocket sslSocket = (SSLSocket) tSSLSocket.getSocket(); SSLParameters sslParams = sslSocket.getSSLParameters(); sslParams.setEndpointIdentificationAlgorithm("HTTPS"); sslSocket.setSSLParameters(sslParams); return new TSocket(sslSocket); } }
private static TSocket getSSLSocketWithHttps(TSocket tSSLSocket) throws TTransportException { SSLSocket sslSocket = (SSLSocket) tSSLSocket.getSocket(); SSLParameters sslParams = sslSocket.getSSLParameters(); sslParams.setEndpointIdentificationAlgorithm("HTTPS"); sslSocket.setSSLParameters(sslParams); return new TSocket(sslSocket); }
private SSLSocket configureSSLSocket(SSLSocket socket, boolean isClientSocket) { SSLParameters sslParameters = socket.getSSLParameters(); configureSslParameters(sslParameters, isClientSocket); socket.setSSLParameters(sslParameters); socket.setUseClientMode(isClientSocket); return socket; }
public void setSSLParameters(final SSLContext sslContext, final SSLSocket sslSocket, final SSLParameters parameters) { sslSocket.setSSLParameters(redefine(parameters, sslSocket.getSupportedCipherSuites(), sslSocket.getSupportedProtocols())); }
SSLParameters sslParams = new SSLParameters(); sslParams.setEndpointIdentificationAlgorithm("HTTPS"); ((SSLSocket)this.socket).setSSLParameters(sslParams);
sslSocket.setSSLParameters(sslParams);
public void configure(final SSLContext context, final SSLSocket sslSocket) { sslSocket.setUseClientMode(clientMode); final SSLParameters sslParameters = sslSocket.getSSLParameters(); configure(sslParameters, sslSocket.getSupportedProtocols(), sslSocket.getSupportedCipherSuites()); sslSocket.setSSLParameters(sslParameters); }
SSLParameters sslParameters = sslSocket.getSSLParameters(); sslParameters.setEndpointIdentificationAlgorithm("HTTPS"); sslSocket.setSSLParameters(sslParameters); } else { logger.warn("Your SSL configuration disables hostname validation. "
@SuppressWarnings("deprecation") static void initialize(final Socket socket, final InetSocketAddress inetSocketAddress, final SocketSettings settings, final SslSettings sslSettings) throws IOException { socket.setTcpNoDelay(true); socket.setSoTimeout(settings.getReadTimeout(MILLISECONDS)); socket.setKeepAlive(settings.isKeepAlive()); if (settings.getReceiveBufferSize() > 0) { socket.setReceiveBufferSize(settings.getReceiveBufferSize()); } if (settings.getSendBufferSize() > 0) { socket.setSendBufferSize(settings.getSendBufferSize()); } if (sslSettings.isEnabled() || socket instanceof SSLSocket) { if (!(socket instanceof SSLSocket)) { throw new MongoInternalException("SSL is enabled but the socket is not an instance of javax.net.ssl.SSLSocket"); } SSLSocket sslSocket = (SSLSocket) socket; SSLParameters sslParameters = sslSocket.getSSLParameters(); if (sslParameters == null) { sslParameters = new SSLParameters(); } enableSni(inetSocketAddress.getHostName(), sslParameters); if (!sslSettings.isInvalidHostNameAllowed()) { enableHostNameVerification(sslParameters); } sslSocket.setSSLParameters(sslParameters); } socket.connect(inetSocketAddress, settings.getConnectTimeout(MILLISECONDS)); }
delegate.setSSLParameters(p);
/** * Enables host verification for SSL, if so configured. */ @Override public void postProcessSocket(Socket socket) { if (this.sslVerifyHost && socket instanceof SSLSocket) { SSLSocket sslSocket = (SSLSocket) socket; SSLParameters sslParameters = sslSocket.getSSLParameters(); // HTTPS works for any TCP connection. // It checks SAN (Subject Alternative Name) as well as CN. sslParameters.setEndpointIdentificationAlgorithm("HTTPS"); sslSocket.setSSLParameters(sslParameters); } }
public SSLSocket newSslSocket() throws IOException { checkIsStarted(); SSLContext context = getSslContext(); SSLSocketFactory factory = context.getSocketFactory(); SSLSocket socket = (SSLSocket)factory.createSocket(); socket.setSSLParameters(customize(socket.getSSLParameters())); return socket; }
/** Sets relevant socket options specified in encryption settings */ private static void prepareSocket(SSLSocket socket, EncryptionOptions options) { String[] suites = filterCipherSuites(socket.getSupportedCipherSuites(), options.cipher_suites); if(options.require_endpoint_verification) { SSLParameters sslParameters = socket.getSSLParameters(); sslParameters.setEndpointIdentificationAlgorithm("HTTPS"); socket.setSSLParameters(sslParameters); } socket.setEnabledCipherSuites(suites); }