On 13 Jan 2014, at 19:23, Dimitar Mavrodiev <dmavrod...@gmail.com> wrote:
> Hi Chris, > > I can't open the link, but yet I wouldn't mind if you folded your patch into > mine. How embarrassing. Our public facing server is temporarily offline so I copied the webrev to a temporary server just to verify it, then obviously forgot it was an internal link. Sorry about this. I’ll repost a mail when the public server is back online. -Chris. > > Thanks, > Dimitar > > Sent from my mobile device. > > On Jan 13, 2014 9:11 PM, "Chris Hegarty" <chris.hega...@oracle.com> wrote: > Hi Dimitar, > > Thank you for following up with this. I came to the same conclusion as you > earlier today, though I noticed it because the test SocksServer was sending a > single byte at a time, for the initial reply. > > I took your latest patch and applied a few minor cleanups, as follows: > http://t4.ie.oracle.com/~chhegar/webrevs/7100957/webrev.00/webrev/ > > If you agree, I’ll fold my patch into yours, run the changes through our > automated build and test system, then push if all passes ok. > > -Chris. > > On 13 Jan 2014, at 18:21, Dimitar Mavrodiev <dmavrod...@gmail.com> wrote: > > > Hi Alan, > > > > I believe to have found and fixed what was causing the failures on Windows. > > Here's the webrev > > https://googledrive.com/host/0B2CI6Ih--1t5bVVwbVlBRmpVMDg/5/index.html. > > > > I modified java.net.SocksSocketImpl#readSocksReply(..) so that it doesn't > > give up on reading after the 3rd attempt, but instead keeps on trying until > > a timeout occurs or end of stream is reached (much like > > DataInputStream#readFully(..)). > > > > -Dimitar > > > > On Sat, Jan 11, 2014 at 2:58 PM, Dimitar Mavrodiev <dmavrod...@gmail.com> > > wrote: > > Hi Alan, > > > > I finally had the chance to put together a windows build environment(Win7) > > and I'm now seeing the same error crop up every once in a while. > > > > To isolate the problem I replaced the socks server > > (jdk/test/java/net/Socks/SocksServer.java) I've been using in my test with > > JSocks and the test now runs successfully (I ran it at least a dozen of > > times). The culprit for these intermittent failures on Windows seems to be > > jdk/test/java/net/Socks/SocksServer.java, I haven't exactly located the > > problem yet. > > > > -Dimitar > > > > > > On Wed, Jan 8, 2014 at 12:08 PM, Dimitar Mavrodiev <dmavrod...@gmail.com> > > wrote: > > Unfortunately I don't have a Windows environment. I'll try to setup one and > > look into this. > > > > -Dimitar > > > > > > On Tue, Jan 7, 2014 at 11:36 PM, Alan Bateman <alan.bate...@oracle.com> > > wrote: > > On 07/01/2014 12:29, Dimitar Mavrodiev wrote: > > Hi Alan, > > > > I've fixed that. Here's the webrev > > https://googledrive.com/host/0B2CI6Ih--1t5bVVwbVlBRmpVMDg/4/index.html. > > > > Thanks for the update, it seems to be okay now for IPv6 disabled case. > > > > One thing I do see though is that the test fails intermittently on Windows > > (in my case Windows Server 2012) when IPv6 is enabled. The typical output > > is attached. I haven't dug into yet. > > > > -Alan > > > > [TestNG] Running: > > java/net/Socks/SocksIPv6Test.java > > > > config SocksIPv6Test.setUp(): success > > test SocksIPv6Test.testSocksOverIPv6(): failure > > java.net.SocketException: Reply from SOCKS server has bad length > > at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:505) > > at java.net.Socket.connect(Socket.java:585) > > at java.net.Socket.connect(Socket.java:534) > > at sun.net.NetworkClient.doConnect(NetworkClient.java:180) > > at sun.net.www.http.HttpClient.openServer(HttpClient.java:432) > > at sun.net.www.http.HttpClient.openServer(HttpClient.java:527) > > at sun.net.www.http.HttpClient.<init>(HttpClient.java:211) > > at sun.net.www.http.HttpClient.New(HttpClient.java:308) > > at sun.net.www.http.HttpClient.New(HttpClient.java:326) > > at > > sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1122) > > at > > sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1101) > > at > > sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:942) > > at > > sun.net.www.protocol.http.HttpURLConnection$6.run(HttpURLConnection.java:940) > > at java.security.AccessController.doPrivileged(Native Method) > > at > > java.security.AccessController.doPrivileged(AccessController.java:713) > > at > > sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:939) > > at > > sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:886) > > at > > sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1466) > > at > > sun.net.www.protocol.http.HttpURLConnection.access$200(HttpURLConnection.java:90) > > at > > sun.net.www.protocol.http.HttpURLConnection$9.run(HttpURLConnection.java:1386) > > at > > sun.net.www.protocol.http.HttpURLConnection$9.run(HttpURLConnection.java:1384) > > at java.security.AccessController.doPrivileged(Native Method) > > at > > java.security.AccessController.doPrivileged(AccessController.java:713) > > at > > sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1383) > > at SocksIPv6Test.testSocksOverIPv6(SocksIPv6Test.java:133) > > > > > > > > >