[ https://issues.apache.org/jira/browse/CAMEL-14070?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Zheng Feng reassigned CAMEL-14070: ---------------------------------- Assignee: Zheng Feng > netty4-http - Server Name Indication (SNI) Support > -------------------------------------------------- > > Key: CAMEL-14070 > URL: https://issues.apache.org/jira/browse/CAMEL-14070 > Project: Camel > Issue Type: Improvement > Components: camel-netty4-http > Reporter: Göran Erkstam > Assignee: Zheng Feng > Priority: Major > Fix For: 3.0.0, 2.25.0 > > > Implement Server Name Indication (SNI) support for the netty4-http client. > (Has been solved for HttpClient for many years > https://issues.apache.org/jira/browse/HTTPCLIENT-1119) > This could be implemented in the > HttpClientInitializerFactory.configureClientSSLOnDemand like this: > {code:java} > private SslHandler configureClientSSLOnDemand() throws Exception { > if (!producer.getConfiguration().isSsl()) { > return null; > } if (producer.getConfiguration().getSslHandler() != null) { > return producer.getConfiguration().getSslHandler(); > } else if (sslContext != null) { > URI uri = new URI(nettyProducer.getEndpoint().getEndpointUri()); > SSLEngine sllEngine = sslContext.createSSLEngine(uri.getHost(), > uri.getPort()); > sllEngine.setUseClientMode(true); > SSLParameters sslParameters = sllEngine.getSSLParameters(); > sslParameters.setServerNames(Arrays.asList(new > SNIHostName(uri.getHost()))); > sllEngine.setSSLParameters(sslParameters); > if (producer.getConfiguration().getSslContextParameters() == > null) { > // just set the enabledProtocols if the SslContextParameter > doesn't set > > engine.setEnabledProtocols(producer.getConfiguration().getEnabledProtocols().split(",")); > } > return new SslHandler(engine); > } return null; > } > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)