QPID-8153: [Qpid JMS AMQP 0-x] Pass host/port through to the SSLEngine so that SNI may function
diff --git a/client/src/main/java/org/apache/qpid/transport/network/security/SecurityLayerFactory.java b/client/src/main/java/org/apache/qpid/transport/network/security/SecurityLayerFactory.java
index 7239c5a..0522936 100644
--- a/client/src/main/java/org/apache/qpid/transport/network/security/SecurityLayerFactory.java
+++ b/client/src/main/java/org/apache/qpid/transport/network/security/SecurityLayerFactory.java
@@ -29,6 +29,7 @@
 import javax.net.ssl.SSLEngine;
 import javax.net.ssl.TrustManager;
 
+import org.apache.qpid.client.BrokerDetails;
 import org.apache.qpid.configuration.CommonProperties;
 import org.apache.qpid.ssl.SSLContextFactory;
 import org.apache.qpid.transport.ByteBufferSender;
@@ -122,7 +123,16 @@
                     CommonProperties.QPID_SECURITY_TLS_CIPHER_SUITE_BLACK_LIST_DEFAULT);
             try
             {
-                _engine = sslCtx.createSSLEngine();
+                if (BrokerDetails.SOCKET.equals(settings.getTransport())
+                                                || settings.getHost() == null
+                                                || settings.getHost().length() == 0)
+                {
+                    _engine = sslCtx.createSSLEngine();
+                }
+                else
+                {
+                    _engine = sslCtx.createSSLEngine(settings.getHost(), settings.getPort());
+                }
                 _engine.setUseClientMode(true);
                 SSLUtil.updateEnabledTlsProtocols(_engine, protocolWhiteList, protocolBlackList);
                 SSLUtil.updateEnabledCipherSuites(_engine, cipherSuiteWhiteList, cipherSuiteBlackList);