Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
5.15.9
-
None
-
None
Description
If the HTTPs transport is used as a network connector , HttpsClientTransport.createSocketFactory() always sees SSLContext.getCurrentSSLContext() as null.
This happens because SSLContext.getCurrentSSLContext() is not called during the execution of HttpsTransportFactory.createTransport(..) . This differs from SSLTransportFactory.createTransport(..)
The call to SSLContext.getCurrentSSLContext is deferred until HttpClientTransport.start() executes. Unfortunately, the DiscoveryNetworkConnector.onServiceAdd(..) has already cleared the thread local SSL context with
finally
{ SslContext.setCurrentSslContext(null); }.
prior to starting the bridge and ultimately calling HttpClientTransport.start() which then accesses the null SSLContext thread local.