Chris Hegarty | 26 May 15:33 2016
Picon

RFR [9] 8085785: sun/net/www/protocol/http/ZoneId.java timeout intermittently

ZoneId is attempting to verify the 'Host' header set by the HttpURLConnection implementation 
when given an IPv6 literal containing a scope id. It does so by iterating the network interfaces 
on the machine attempting to find one that is suitable to use as the listening interface for a 
temporary test HTTP sever. Then it connects to it, and verifies the value of the 'Host' header. 

This is problematic as some interfaces like teredo on Windows, or awdl on Mac, are not 
suitable. Rather than all this, the test can use the IPv6 loopback address, which can contain 
a scope id, if retrieved from the NetworkInterface API. 

http://cr.openjdk.java.net/~chegar/8085785/
https://bugs.openjdk.java.net/browse/JDK-8085785

-Chris.
Chris Hegarty | 25 May 11:50 2016
Picon

RFR 8157811 [9] Additional minor fixes and cleanups in NetworkInterface.c

As a follow up to JDK-8156521, and when comparing against the
version of this file in jdk8u-dev a few minor issues were noticed. 

There is a free of a memory structure that was missed somehow
in the 9 version of this file ( it is already in the 8 version ). The
remaining few changes are just some minor cleanup.

http://cr.openjdk.java.net/~chegar/8157811/
https://bugs.openjdk.java.net/browse/JDK-8157811

-Chris.

Chris Hegarty | 24 May 00:05 2016
Picon

RFR [9] 8155086: Replace usage of -Djdk.launcher.limitmods in tests with -limitmods

Replace usage of -Djdk.launcher.limitmods, in several networking and
NIO tests, with -limitmods now that jtreg with support for -limitmods is
available. 

-Chris.

diff --git a/test/java/net/SocketOption/OptionsTest.java b/test/java/net/SocketOption/OptionsTest.java
--- a/test/java/net/SocketOption/OptionsTest.java
+++ b/test/java/net/SocketOption/OptionsTest.java
<at> <at> -26,7 +26,7 <at> <at>
  * <at> bug 8036979 8072384 8044773
  * <at> run main/othervm -Xcheck:jni OptionsTest
  * <at> run main/othervm -Xcheck:jni -Djava.net.preferIPv4Stack=true OptionsTest
- * <at> run main/othervm -Djdk.launcher.limitmods=java.base OptionsTest
+ * <at> run main/othervm -limitmods java.base OptionsTest
  */

 

 import java.lang.reflect.Method;
diff --git a/test/java/net/SocketOption/UnsupportedOptionsTest.java b/test/java/net/SocketOption/UnsupportedOptionsTest.java
--- a/test/java/net/SocketOption/UnsupportedOptionsTest.java
+++ b/test/java/net/SocketOption/UnsupportedOptionsTest.java
<at> <at> -33,7 +33,7 <at> <at>
  * <at> summary Test checks that UnsupportedOperationException for unsupported
  * SOCKET_OPTIONS is thrown by both getOption() and setOption() methods.
  * <at> run main UnsupportedOptionsTest
- * <at> run main/othervm -Djdk.launcher.limitmods=java.base UnsupportedOptionsTest
+ * <at> run main/othervm -limitmods java.base UnsupportedOptionsTest
  */

 

 public class UnsupportedOptionsTest {
diff --git a/test/java/nio/channels/DatagramChannel/SocketOptionTests.java b/test/java/nio/channels/DatagramChannel/SocketOptionTests.java
--- a/test/java/nio/channels/DatagramChannel/SocketOptionTests.java
+++ b/test/java/nio/channels/DatagramChannel/SocketOptionTests.java
<at> <at> -25,7 +25,7 <at> <at>
  * <at> bug 4640544 8044773
  * <at> summary Unit test for setOption/getOption/options methods
  * <at> run main SocketOptionTests
- * <at> run main/othervm -Djdk.launcher.limitmods=java.base SocketOptionTests
+ * <at> run main/othervm -limitmods java.base SocketOptionTests
  */

 

 import java.nio.*;
diff --git a/test/java/nio/channels/ServerSocketChannel/SocketOptionTests.java b/test/java/nio/channels/ServerSocketChannel/SocketOptionTests.java
--- a/test/java/nio/channels/ServerSocketChannel/SocketOptionTests.java
+++ b/test/java/nio/channels/ServerSocketChannel/SocketOptionTests.java
<at> <at> -26,7 +26,7 <at> <at>
  * <at> summary Unit test for ServerSocketChannel setOption/getOption/options
  *          methods.
  * <at> run main SocketOptionTests
- * <at> run main/othervm -Djdk.launcher.limitmods=java.base SocketOptionTests
+ * <at> run main/othervm -limitmods java.base SocketOptionTests
  */

 

 import java.nio.*;
diff --git a/test/java/nio/channels/SocketChannel/SocketOptionTests.java b/test/java/nio/channels/SocketChannel/SocketOptionTests.java
--- a/test/java/nio/channels/SocketChannel/SocketOptionTests.java
+++ b/test/java/nio/channels/SocketChannel/SocketOptionTests.java
<at> <at> -26,7 +26,7 <at> <at>
  * <at> summary Unit test to check SocketChannel setOption/getOption/options
  *          methods.
  * <at> run main SocketOptionTests
- * <at> run main/othervm -Djdk.launcher.limitmods=java.base SocketOptionTests
+ * <at> run main/othervm -limitmods java.base SocketOptionTests
  */

 

 import java.nio.*;

Amy Lu | 23 May 08:39 2016
Picon

JDK 9 RFR of JDK-8157499: Mark several tests from jdk_net as intermittently failing

Below tests are known to fail intermittently. This patch is to mark the test accordingly with keyword 'intermittent’ until issue resolved.

java/net/MulticastSocket/TestInterfaces.java (JDK-8134989)
java/net/DatagramSocket/PortUnreachable.java (JDK-8085875)
java/net/InetAddress/IsReachableViaLoopbackTest.java (JDK-8139929)
sun/net/www/http/ChunkedOutputStream/checkError.java (JDK-8041924)

bug: https://bugs.openjdk.java.net/browse/JDK-8157499
webrev: http://cr.openjdk.java.net/~amlu/8157499/webrev.00/

Thanks,
Amy


--- old/test/java/net/DatagramSocket/PortUnreachable.java 2016-05-23 14:31:49.000000000 +0800 +++ new/test/java/net/DatagramSocket/PortUnreachable.java 2016-05-23 14:31:49.000000000 +0800 <at> <at> -1,5 +1,5 <at> <at> /* - * Copyright (c) 2000, 2013 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2000, 2016, 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 <at> <at> -24,6 +24,7 <at> <at> /** * <at> test * <at> bug 4361783 + * <at> key intermittent * <at> summary Test to see if ICMP Port Unreachable on non-connected * DatagramSocket causes a SocketException "socket closed" * exception on Windows 2000. --- old/test/java/net/InetAddress/IsReachableViaLoopbackTest.java 2016-05-23 14:31:50.000000000 +0800 +++ new/test/java/net/InetAddress/IsReachableViaLoopbackTest.java 2016-05-23 14:31:50.000000000 +0800 <at> <at> -5,6 +5,7 <at> <at> /** * <at> test * <at> bug 8135305 + * <at> key intermittent * <at> summary ensure we can't ping external hosts via loopback if */ --- old/test/java/net/MulticastSocket/TestInterfaces.java 2016-05-23 14:31:50.000000000 +0800 +++ new/test/java/net/MulticastSocket/TestInterfaces.java 2016-05-23 14:31:50.000000000 +0800 <at> <at> -1,5 +1,5 <at> <at> /* - * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2001, 2016, 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 <at> <at> -24,6 +24,7 <at> <at> /* * <at> test * <at> bug 4422122 + * <at> key intermittent * <at> summary Test that MulticastSocket.getInterface returns the * same InetAddress set by MulticastSocket.setInterface */ --- old/test/sun/net/www/http/ChunkedOutputStream/checkError.java 2016-05-23 14:31:51.000000000 +0800 +++ new/test/sun/net/www/http/ChunkedOutputStream/checkError.java 2016-05-23 14:31:51.000000000 +0800 <at> <at> -1,5 +1,5 <at> <at> /* - * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 2016, 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 <at> <at> -24,6 +24,7 <at> <at> /** * <at> test * <at> bug 5054016 + * <at> key intermittent * <at> run main/othervm/timeout=300 checkError * <at> summary get the failure immediately when writing individual chunks over socket fail */
vyom | 23 May 06:04 2016
Picon

RFR 8143923 :DatagramSocket and MulticastSocket supportedOptions set depends on call order

Hi All,

Please review the below code change.

Bug       : JDK-8143923 DatagramSocket and MulticastSocket 
supportedOptions set depends on call order

Webrev : 
http://cr.openjdk.java.net/~vtewari/8143923/webrev0.0/index.html 
<http://cr.openjdk.java.net/%7Evtewari/8143923/webrev0.0/index.html>

I found the same problem in java.net.Socket/ServerSocket, i did the code 
changes for them as well.

Thanks,
Vyom

vyom | 20 May 10:50 2016
Picon

RFR 8048520 :File Descriptor Leak in jdk/src/solaris/native/java/net/net_util_md.c

Hi,

Please review the simple fix for below issue.

Bug: JDK-8048520 :File Descriptor Leak in 
jdk/src/solaris/native/java/net/net_util_md.c

Webrev: http://cr.openjdk.java.net/~vtewari/8048520/webrev0.0/index.html 
<http://cr.openjdk.java.net/%7Evtewari/8048520/webrev0.0/index.html>

Thanks,
Vyom

Svetlana Nikandrova | 19 May 18:13 2016
Picon

RFR 8136933: Additional tests for Solaris SO_FLOW_SLA socket option in JDK 9

Hello,

please review additional test for Solaris SO_FLOW_SLA socket option.
Test checks that SO_FLOW_SLA option is supported on Solaris 11.2+ and 
not supported on other platforms.

http://cr.openjdk.java.net/~snikandrova/8136933/webrev.00/ 
<http://cr.openjdk.java.net/%7Esnikandrova/8136933/webrev.00/>

Thank you,
Svetlana

Anthony Vanelverdinghe | 19 May 15:54 2016
Picon

JEP 110: leeway for API changes?

Hi

With the JDK's "Feature Complete" milestone coming up next week: how 
much leeway is there still for API changes? I've made API suggestions 
(a.o. in [1]), ranging from changing 
HttpResponse.multiProcessor::onStart's return type (from BiFunction<..., 
Boolean> to BiPredicate), to building on the j.u.c.Flow API & 
eliminating HttpResponse.MultiProcessor. So I'm wondering what's still 
on on the table for JEP 110 w.r.t. API changes?

[1] http://mail.openjdk.java.net/pipermail/net-dev/2016-March/009608.html

Kind regards,
Anthony

Michael McMahon | 18 May 18:55 2016
Picon

RFR 8157105: HTTP/2 client hangs in blocking mode if an invalid frame has been received

Could I get the following change reviewed please?

http://cr.openjdk.java.net/~michaelm/8157105/webrev.1/

Some error conditions not being handled correctly and some
logging cleanup.

Thanks
Michael.

Artem Smotrakov | 17 May 23:27 2016
Picon

[9] RFR: 8157107: HTTP/2 client may fail with NPE if additional logging enabled

Hello,

Please review this patch for 9.

NPE may occur if additional logging is enabled with "java.net.http.HttpClient.log" system property because AsyncSSLDelegate.logParams(SSLParameters) doesn't check for null values which were returned by SSLParameters instance.

I also noticed that setting "java.net.http.HttpClient.log" system property to "all" doesn't enable additional logging for "ssl". Not sure if that was done for some purpose.

Changes:
- added a couple of checks to AsyncSSLDelegate.logParams(SSLParameters) method to prevent NPEs
- updated java/net/http/Log.java to enable logging for "ssl" if "java.net.http.HttpClient.log" system property was set to "all"
- updated java/net/http/Http2TestServer.java to implement AutoCloseable, so that it's possible to use it in try-with-resource blocks (which simplifies tests a little bit)
- added TLSConnection.java test which run HTTP/2 client with different SSL parameters, and checks that they were actually used
- a couple of cosmetic changes (unused imports, etc)

TLSConnection.java test also checks that https://bugs.openjdk.java.net/browse/JDK-8150769 was fixed (this bug has been fixed while HTTP/2 integration).

Bug: https://bugs.openjdk.java.net/browse/JDK-8157107
Webrev: http://cr.openjdk.java.net/~asmotrak/8157107/webrev.01/

Artem
Michael McMahon | 17 May 15:43 2016
Picon

RFR: 8153142: Cannot resolve multiple values from one response header

Could I get the following change reviewed please?

In some circumstances multi-valued response headers
were being ignored (except for the first occurrence).
The change fixes that problem. It also changes the
output of multi-valued request headers to be consistent with that.

So instead of sending two headers as:

X-Foo: val1, val2

they are sent as

X-Foo: val1
X-Foo: val2

It is still possible to do it the other way by constructing the
value string as a single header.

http://cr.openjdk.java.net/~michaelm/8153142/webrev.1/

Thanks,
Michael


Gmane