src/java.base/share/classes/java/net/HttpConnectSocketImpl.java
changeset 54188 791052cc88db
parent 54155 b5a73f22b2bd
child 54689 b28b7f631301
child 57277 d2b2a4edbfe7
--- a/src/java.base/share/classes/java/net/HttpConnectSocketImpl.java	Mon Mar 18 15:29:19 2019 +0100
+++ b/src/java.base/share/classes/java/net/HttpConnectSocketImpl.java	Tue Mar 19 14:27:50 2019 +0000
@@ -114,14 +114,17 @@
         if (endpoint == null || !(endpoint instanceof InetSocketAddress))
             throw new IllegalArgumentException("Unsupported address type");
         final InetSocketAddress epoint = (InetSocketAddress)endpoint;
-        final String destHost = epoint.isUnresolved() ? epoint.getHostName()
-                                                      : epoint.getAddress().getHostAddress();
+        String destHost = epoint.isUnresolved() ? epoint.getHostName()
+                                                : epoint.getAddress().getHostAddress();
         final int destPort = epoint.getPort();
 
         SecurityManager security = System.getSecurityManager();
         if (security != null)
             security.checkConnect(destHost, destPort);
 
+        if (destHost.contains(":"))
+            destHost = "[" + destHost + "]";
+
         // Connect to the HTTP proxy server
         String urlString = "http://" + destHost + ":" + destPort;
         Socket httpSocket = privilegedDoTunnel(urlString, timeout);