# HG changeset patch # User chegar # Date 1294925098 0 # Node ID 65f5328a67a2d80770cb0afb929d4d7ad0e44343 # Parent 2c27ff4c062e6a33c597df8517be9c476ba0bf41 6964547: Impossible to set useV4 in SocksSocketImpl Summary: Add socksProxyVersion property Reviewed-by: alanb, michaelm diff -r 2c27ff4c062e -r 65f5328a67a2 jdk/make/sun/net/FILES_java.gmk --- a/jdk/make/sun/net/FILES_java.gmk Thu Jan 13 11:02:28 2011 +0000 +++ b/jdk/make/sun/net/FILES_java.gmk Thu Jan 13 13:24:58 2011 +0000 @@ -33,6 +33,7 @@ sun/net/ProgressEvent.java \ sun/net/ProgressListener.java \ sun/net/ProgressMeteringPolicy.java \ + sun/net/SocksProxy.java \ sun/net/TelnetInputStream.java \ sun/net/TelnetOutputStream.java \ sun/net/TelnetProtocolException.java \ diff -r 2c27ff4c062e -r 65f5328a67a2 jdk/src/share/classes/java/io/PrintStream.java --- a/jdk/src/share/classes/java/io/PrintStream.java Thu Jan 13 11:02:28 2011 +0000 +++ b/jdk/src/share/classes/java/io/PrintStream.java Thu Jan 13 13:24:58 2011 +0000 @@ -70,7 +70,7 @@ private OutputStreamWriter charOut; /** - * nonNull is explicitly delcared here so as not to create an extra + * nonNull is explicitly declared here so as not to create an extra * dependency on java.util.Objects.nonNull. PrintStream is loaded * early during system initialization. */ diff -r 2c27ff4c062e -r 65f5328a67a2 jdk/src/share/classes/java/net/SocksSocketImpl.java --- a/jdk/src/share/classes/java/net/SocksSocketImpl.java Thu Jan 13 11:02:28 2011 +0000 +++ b/jdk/src/share/classes/java/net/SocksSocketImpl.java Thu Jan 13 13:24:58 2011 +0000 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -29,6 +29,7 @@ import java.io.BufferedOutputStream; import java.security.AccessController; import java.security.PrivilegedExceptionAction; +import sun.net.SocksProxy; import sun.net.www.ParseUtil; /* import org.ietf.jgss.*; */ @@ -397,6 +398,11 @@ // Use getHostString() to avoid reverse lookups server = ((InetSocketAddress) p.address()).getHostString(); serverPort = ((InetSocketAddress) p.address()).getPort(); + if (p instanceof SocksProxy) { + if (((SocksProxy)p).protocolVersion() == 4) { + useV4 = true; + } + } // Connects to the SOCKS server try { @@ -700,6 +706,11 @@ // Use getHostString() to avoid reverse lookups server = ((InetSocketAddress) p.address()).getHostString(); serverPort = ((InetSocketAddress) p.address()).getPort(); + if (p instanceof SocksProxy) { + if (((SocksProxy)p).protocolVersion() == 4) { + useV4 = true; + } + } // Connects to the SOCKS server try { diff -r 2c27ff4c062e -r 65f5328a67a2 jdk/src/share/classes/java/net/doc-files/net-properties.html --- a/jdk/src/share/classes/java/net/doc-files/net-properties.html Thu Jan 13 11:02:28 2011 +0000 +++ b/jdk/src/share/classes/java/net/doc-files/net-properties.html Thu Jan 13 13:24:58 2011 +0000 @@ -127,10 +127,15 @@ are specified. If SOCKS is supported by a Java SE implementation, the following properties will be used: