From bradford.wetmore at oracle.com Fri Mar 1 00:26:07 2019 From: bradford.wetmore at oracle.com (Bradford Wetmore) Date: Thu, 28 Feb 2019 16:26:07 -0800 Subject: RFR [13] JDK-8215430: Remove the internal package com.sun.net.ssl In-Reply-To: References: <898ee087-a589-de30-c842-770c606c49de@oracle.com> <80f63579-2d29-2600-9d92-da1410244fa4@oracle.com> Message-ID: <413d46d7-4d61-d587-e7bb-847939d37187@oracle.com> AbstractDelegateHttpsURLConnection.java --------------------------------------- 74/88/etc. I haven't checked for sure, but IIRC we made setNewClient public from protected and other such changes in order for these classes to use the delegation model and allow calls to both sun/net/www/protocol and com/sun/net/ssl/internal/www/protocol... Should the delegation code be stripped out, and these methods be set back to protected? ProviderConfig.java ------------------- I think we're over-rotating on this one, I'd be very surprised if anyone is still using com.sun.net.ssl.internal.ssl.Provider. My personal preference is to kill it now, but if you really want to keep it, please file a bug and commit to a near release so we can finally kill this thing off. test/jdk/com/sun/net/ssl/SSLSecurity/ComTrustManagerFactoryImpl.java test/jdk/com/sun/net/ssl/SSLSecurity/JavaxTrustManagerFactoryImpl.java -------------------------------------------------------------------- When we opensourced the JSSE code, we left some of the javax and com tests in the com/sun/net/ssl test directory. The test names are very similar, with the exception of the Com/Javax prefix. The tests were identical, with the exception of whether they called into the com or javax APIs. Here you are deleting the ComTrustManagerFactoryImpl test which is probably correct, but should you also be deleting the JavaxTrustManagerFactoryImpl test as well? Please check that we didn't get too carried away and are deleting still valid tests. Thanks, Brad On 2/26/2019 7:33 AM, Chris Hegarty wrote: > >> On 26 Feb 2019, at 03:53, Xuelei Fan wrote: >> >> >> >> It makes sense to me to leave the AbstractDelegateHttpsURLConnection methods as public. We may need to re-org the code later, but it is out of the scope of this update. >> >> Here is the new webrev (only AbstractDelegateHttpsURLConnection updated): >> http://cr.openjdk.java.net/~xuelei/8215430/webrev.01/ > > I think that this is probably ok ( since the package is not exported ), > but it seems a little distasteful to not have the API move through > the terminal deprecation route before being removed. > > -Chris. > From xuelei.fan at oracle.com Fri Mar 1 16:27:47 2019 From: xuelei.fan at oracle.com (Xuelei Fan) Date: Fri, 1 Mar 2019 08:27:47 -0800 Subject: RFR [13] JDK-8215430: Remove the internal package com.sun.net.ssl In-Reply-To: <413d46d7-4d61-d587-e7bb-847939d37187@oracle.com> References: <898ee087-a589-de30-c842-770c606c49de@oracle.com> <80f63579-2d29-2600-9d92-da1410244fa4@oracle.com> <413d46d7-4d61-d587-e7bb-847939d37187@oracle.com> Message-ID: <906d46a3-b26c-3cae-2e5a-827fbfff7435@oracle.com> On 2/28/2019 4:26 PM, Bradford Wetmore wrote: > AbstractDelegateHttpsURLConnection.java > --------------------------------------- > 74/88/etc.? I haven't checked for sure, but IIRC we made setNewClient > public from protected and other such changes in order for these classes > to use the delegation model and allow calls to both sun/net/www/protocol > and com/sun/net/ssl/internal/www/protocol...? Should the delegation code > be stripped out, and these methods be set back to protected? > It should be safe to use "protected", but it's less risky to keep it unchanged. I agree that the delegation code should be stripped out. The HttpsURLConnection implementation could be re-designed. I filed a new bug to track the enhancement (JDK-8219987). > ProviderConfig.java > ------------------- > I think we're over-rotating on this one, I'd be very surprised if anyone > is still using com.sun.net.ssl.internal.ssl.Provider.? My personal > preference is to kill it now, but if you really want to keep it, please > file a bug and commit to a near release so we can finally kill this > thing off. > I would like do it later as the old java.security use this string, and I'm not sure if someone really use it in their application. It is safer to fix in a separate bug. I filled a new bug to tack the update (JDK-8219989). > test/jdk/com/sun/net/ssl/SSLSecurity/ComTrustManagerFactoryImpl.java > test/jdk/com/sun/net/ssl/SSLSecurity/JavaxTrustManagerFactoryImpl.java > -------------------------------------------------------------------- > When we opensourced the JSSE code, we left some of the javax and com > tests in the com/sun/net/ssl test directory.? The test names are very > similar, with the exception of the Com/Javax prefix.? The tests were > identical, with the exception of whether they called into the com or > javax APIs. > > Here you are deleting the ComTrustManagerFactoryImpl test which is > probably correct, but should you also be deleting the > JavaxTrustManagerFactoryImpl test as well?? Please check that we didn't > get too carried away and are deleting still valid tests. > They are helper classes and used by ProviderTest, which is used to test the com.sun.net.ssl wrappers. Thanks, Xuelei > Thanks, > > Brad > > > On 2/26/2019 7:33 AM, Chris Hegarty wrote: >> >>> On 26 Feb 2019, at 03:53, Xuelei Fan wrote: >>> >>> >>> >>> It makes sense to me to leave the AbstractDelegateHttpsURLConnection >>> methods as public.? We may need to re-org the code later, but it is >>> out of the scope of this update. >>> >>> Here is the new webrev (only AbstractDelegateHttpsURLConnection >>> updated): >>> ??? http://cr.openjdk.java.net/~xuelei/8215430/webrev.01/ >> >> I think that this is probably ok ( since the package is not exported ), >> but it seems a little distasteful to not have the API move through >> the terminal deprecation route before being removed. >> >> -Chris. >> From raell at web.de Sun Mar 10 19:24:18 2019 From: raell at web.de (raell at web.de) Date: Sun, 10 Mar 2019 20:24:18 +0100 Subject: Disable TLS 1.3 backward compatibility mode? Message-ID: An HTML attachment was scrubbed... URL: From sean.mullan at oracle.com Mon Mar 11 12:23:54 2019 From: sean.mullan at oracle.com (Sean Mullan) Date: Mon, 11 Mar 2019 08:23:54 -0400 Subject: Disable TLS 1.3 backward compatibility mode? In-Reply-To: References: Message-ID: <6bfc7216-6b20-b570-fb14-c9f6f391ccea@oracle.com> -bcc net-dev Copying security-dev as TLS 1.3 topics are more appropriate for that mailing list. --Sean On 3/10/19 3:24 PM, raell at web.de wrote: > Dear, > the Java TLS 1.3 implementation supports middlebox compatibility (e.g. > sends a non-empty session id and a ChangeCipherSpec message). Out of > interest: Is it possible to disable this compatibility mode? > Regards, Ralph From aeubanks at google.com Mon Mar 11 16:55:03 2019 From: aeubanks at google.com (Arthur Eubanks) Date: Mon, 11 Mar 2019 09:55:03 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests Message-ID: bug: https://bugs.openjdk.java.net/browse/JDK-8220083 webrev: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.00/ First of a few ipv6 patches to come. -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris.hegarty at oracle.com Mon Mar 11 17:03:59 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Mon, 11 Mar 2019 17:03:59 +0000 Subject: RFR 8184315: Typo in java.net.JarURLConnection.getCertificates() method documentation Message-ID: Trivial typo fixes to: 1) use the simple present tense of the verb, and 2) correctly pluralize the return value. Similar to that of JarEntry::getCertificates. --- a/src/java.base/share/classes/java/net/JarURLConnection.java +++ b/src/java.base/share/classes/java/net/JarURLConnection.java @@ -279,35 +279,35 @@ .... /** - * Return the Certificate object for this connection if the URL + * Returns the Certificate objects for this connection if the URL * for it points to a JAR file entry, null otherwise. This method * can only be called once * the connection has been completely verified by reading * from the input stream until the end of the stream has been * reached. Otherwise, this method will return {@code null} * * @return the Certificate object for this connection if the URL * for it points to a JAR file entry, null otherwise. * * @exception IOException if getting the JAR entry causes an * IOException to be thrown. * * @see #getJarEntry */ public java.security.cert.Certificate[] getCertificates() throws IOException -Chris. From chris.hegarty at oracle.com Mon Mar 11 17:06:02 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Mon, 11 Mar 2019 17:06:02 +0000 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: Message-ID: <02cf0009-2d17-3c3e-29bf-839b025628eb@oracle.com> Arthur, On 11/03/2019 16:55, Arthur Eubanks wrote: > bug: https://bugs.openjdk.java.net/browse/JDK-8220083 > webrev: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.00/ In principle, I think this is good. I want to run some tests with your patch, and do a detailed review. Will reply with results of such soon. -Chris. From daniel.fuchs at oracle.com Mon Mar 11 17:09:28 2019 From: daniel.fuchs at oracle.com (Daniel Fuchs) Date: Mon, 11 Mar 2019 17:09:28 +0000 Subject: RFR 8184315: Typo in java.net.JarURLConnection.getCertificates() method documentation In-Reply-To: References: Message-ID: <14a51a14-4d32-f6d1-3065-80936e877068@oracle.com> Looks good Chris. best regards, -- daniel On 11/03/2019 17:03, Chris Hegarty wrote: > Trivial typo fixes to: 1) use the simple present tense of the verb, and > 2) correctly pluralize the return value. Similar to that of > JarEntry::getCertificates. > > --- a/src/java.base/share/classes/java/net/JarURLConnection.java > +++ b/src/java.base/share/classes/java/net/JarURLConnection.java > @@ -279,35 +279,35 @@ > ????? .... > > ???? /** > -???? * Return the Certificate object for this connection if the URL > +???? * Returns the Certificate objects for this connection if the URL > ????? * for it points to a JAR file entry, null otherwise. This method > ????? * can only be called once > ????? * the connection has been completely verified by reading > ????? * from the input stream until the end of the stream has been > ????? * reached. Otherwise, this method will return {@code null} > ????? * > ????? * @return the Certificate object for this connection if the URL > ????? * for it points to a JAR file entry, null otherwise. > ????? * > ????? * @exception IOException if getting the JAR entry causes an > ????? * IOException to be thrown. > ????? * > ????? * @see #getJarEntry > ????? */ > ???? public java.security.cert.Certificate[] getCertificates() > ????????? throws IOException > > -Chris. From daniel.fuchs at oracle.com Mon Mar 11 17:15:52 2019 From: daniel.fuchs at oracle.com (Daniel Fuchs) Date: Mon, 11 Mar 2019 17:15:52 +0000 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: Message-ID: <43473661-f736-7fb1-2f81-f8e8566f01ac@oracle.com> Hi Arthur, I believe this is generally good. The question I have is whether the URLs that use "127.0.0.1" should also be changed to to use whatever address is returned InetAddress.getLoopbackAddress(). If it is needed it may require a bit more coding to ensure that [ ] are correctly added if the returned address is IPv6. Also please update the copyright years in the files you're changing. best regards, -- daniel On 11/03/2019 16:55, Arthur Eubanks wrote: > bug: https://bugs.openjdk.java.net/browse/JDK-8220083 > webrev: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.00/ > > First of a few ipv6 patches to come. From martinrb at google.com Mon Mar 11 17:30:54 2019 From: martinrb at google.com (Martin Buchholz) Date: Mon, 11 Mar 2019 10:30:54 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: <43473661-f736-7fb1-2f81-f8e8566f01ac@oracle.com> References: <43473661-f736-7fb1-2f81-f8e8566f01ac@oracle.com> Message-ID: On Mon, Mar 11, 2019 at 10:18 AM Daniel Fuchs wrote: > > Also please update the copyright years in the files you're > changing. > > Google policy is to leave Copyright years in source files untouched. Especially another company's! -------------- next part -------------- An HTML attachment was scrubbed... URL: From martinrb at google.com Mon Mar 11 17:36:23 2019 From: martinrb at google.com (Martin Buchholz) Date: Mon, 11 Mar 2019 10:36:23 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: Message-ID: Tested with $ make test TEST="test/jdk/com/sun/net/httpserver test/jdk/com/sun/nio/ test/jdk/java/net test/jdk/java/nio/channels test/jdk/java/rmi/transport/ test/jdk/jdk/net/ test/jdk/sun/net/" That's useful information, but unfortunately jcheck will reject it. Please edit the commit metadata to contain only the format documented here: http://openjdk.java.net/guide/producingChangeset.html#create -------------- next part -------------- An HTML attachment was scrubbed... URL: From michael.x.mcmahon at oracle.com Mon Mar 11 17:38:08 2019 From: michael.x.mcmahon at oracle.com (Michael McMahon) Date: Mon, 11 Mar 2019 17:38:08 +0000 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: Message-ID: <5C869D00.50100@oracle.com> This looks good to me. - Michael. On 11/03/2019, 16:55, Arthur Eubanks wrote: > bug: https://bugs.openjdk.java.net/browse/JDK-8220083 > webrev: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.00/ > > > First of a few ipv6 patches to come. -------------- next part -------------- An HTML attachment was scrubbed... URL: From aeubanks at google.com Mon Mar 11 17:40:45 2019 From: aeubanks at google.com (Arthur Eubanks) Date: Mon, 11 Mar 2019 10:40:45 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: <43473661-f736-7fb1-2f81-f8e8566f01ac@oracle.com> References: <43473661-f736-7fb1-2f81-f8e8566f01ac@oracle.com> Message-ID: > > The question I have is whether the URLs that use "127.0.0.1" > should also be changed to to use whatever address is returned > InetAddress.getLoopbackAddress(). If it is needed it may > require a bit more coding to ensure that [ ] are correctly > added if the returned address is IPv6. > Hi Daniel, Regarding the URLs, those will be changed in a followup change (and "[]" is handled). -------------- next part -------------- An HTML attachment was scrubbed... URL: From martinrb at google.com Mon Mar 11 17:46:47 2019 From: martinrb at google.com (Martin Buchholz) Date: Mon, 11 Mar 2019 10:46:47 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: Message-ID: These changes are clean progress and allow tests to pass on any of the 4 (!) combinations of IPV4/IPV6 support available. LGTM. BUT ... in the current multi-protocol world it's probably better to test against all the interfaces available on the host machine. Maybe there should be a InetAddress.getLoopbackAddresses (note the plural!) and tests should run against all the InetAddress objects returned by such an API? But this is a big task (mostly spec work I would guess) for the net-dev team. On Mon, Mar 11, 2019 at 9:55 AM Arthur Eubanks wrote: > bug: https://bugs.openjdk.java.net/browse/JDK-8220083 > webrev: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.00/ > > First of a few ipv6 patches to come. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From aeubanks at google.com Mon Mar 11 18:14:32 2019 From: aeubanks at google.com (Arthur Eubanks) Date: Mon, 11 Mar 2019 11:14:32 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: Message-ID: Updated copyright years (I asked around, it should be fine), updated commit message. http://cr.openjdk.java.net/~aeubanks/8220083/webrev.01 On Mon, Mar 11, 2019 at 10:46 AM Martin Buchholz wrote: > These changes are clean progress and allow tests to pass on any of the 4 > (!) combinations of IPV4/IPV6 support available. LGTM. > > BUT ... in the current multi-protocol world it's probably better to test > against all the interfaces available on the host machine. > Maybe there should be a InetAddress.getLoopbackAddresses (note the > plural!) and tests should run against all the InetAddress objects returned > by such an API? > But this is a big task (mostly spec work I would guess) for the net-dev > team. > > On Mon, Mar 11, 2019 at 9:55 AM Arthur Eubanks > wrote: > >> bug: https://bugs.openjdk.java.net/browse/JDK-8220083 >> webrev: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.00/ >> >> First of a few ipv6 patches to come. >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris.hegarty at oracle.com Tue Mar 12 09:05:56 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Tue, 12 Mar 2019 09:05:56 +0000 Subject: RFR 8220480: Typo in java.net.http.HttpResponse.BodySubscriber documentation Message-ID: <790F37C9-7D05-4872-9560-4EBEA8B5CC11@oracle.com> Minor typo in the link target, should be BodySubscribers ( plural ). --- a/src/java.net.http/share/classes/java/net/http/HttpResponse.java +++ b/src/java.net.http/share/classes/java/net/http/HttpResponse.java @@ -1,7 +1,7 @@ /* - * Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2019, 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 * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this @@ -826,11 +826,11 @@ } /** * A {@code BodySubscriber} consumes response body bytes and converts them * into a higher-level Java type. The class {@link BodySubscribers - * BodySubscriber} provides implementations of many common body subscribers. + * BodySubscribers} provides implementations of many common body subscribers. * *

The object acts as a {@link Flow.Subscriber}<{@link List}<{@link * ByteBuffer}>> to the HTTP Client implementation, which publishes * lists of ByteBuffers containing the response body. The Flow of data, as * well as the order of ByteBuffers in the Flow lists, is a strictly ordered -Chris. From Alan.Bateman at oracle.com Tue Mar 12 09:19:09 2019 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Tue, 12 Mar 2019 09:19:09 +0000 Subject: RFR 8220480: Typo in java.net.http.HttpResponse.BodySubscriber documentation In-Reply-To: <790F37C9-7D05-4872-9560-4EBEA8B5CC11@oracle.com> References: <790F37C9-7D05-4872-9560-4EBEA8B5CC11@oracle.com> Message-ID: <08b7d085-ae6a-488f-067e-08d07a229f7f@oracle.com> On 12/03/2019 09:05, Chris Hegarty wrote: > Minor typo in the link target, should be BodySubscribers ( plural ). > Looks okay. From daniel.fuchs at oracle.com Tue Mar 12 10:45:39 2019 From: daniel.fuchs at oracle.com (Daniel Fuchs) Date: Tue, 12 Mar 2019 10:45:39 +0000 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: Message-ID: Hi Arthur, This looks good to me. I have launched the changes in your second webrev through our test system and not observed any regression. I don't know if Chris still has some tests running, but from my standpoint you're good to go! best regards, -- daniel On 11/03/2019 18:14, Arthur Eubanks wrote: > Updated copyright years (I asked around, it should be fine), updated > commit message. > http://cr.openjdk.java.net/~aeubanks/8220083/webrev.01 > > On Mon, Mar 11, 2019 at 10:46 AM Martin Buchholz > wrote: > > These changes are clean progress and allow tests to pass on any of > the 4 (!) combinations of IPV4/IPV6 support available.? LGTM. > > BUT ... in the current multi-protocol world it's probably better to > test against all the interfaces available on the host machine. > Maybe there should be a InetAddress.getLoopbackAddresses (note the > plural!) and tests should run against all the InetAddress objects > returned by such an API? > But this is a big task (mostly spec work I would guess) for the > net-dev team. > > On Mon, Mar 11, 2019 at 9:55 AM Arthur Eubanks > wrote: > > bug: https://bugs.openjdk.java.net/browse/JDK-8220083 > webrev: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.00/ > > First of a few ipv6 patches to come. > From chris.hegarty at oracle.com Tue Mar 12 11:59:58 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Tue, 12 Mar 2019 11:59:58 +0000 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: Message-ID: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> Hi Arthur, > On 11 Mar 2019, at 18:14, Arthur Eubanks > wrote: > > Updated copyright years (I asked around, it should be fine), updated commit message. > http://cr.openjdk.java.net/~aeubanks/8220083/webrev.01 This is a welcome improvement to the tests. Reviewed, with some minor comments and additions below. It will not be easy to get all the JDK networking tests passing successfully on IPv6-only environments ( ignoring the other combinations for now ). But this is a good improvement, and hopefully the start of a number of changes that add similar incremental improvements. To this end, I've created an umbrella task, 8220499, to track these test changes ( in one place ), and updated this issue, 8220083, to be a sub-task of it. Let's add more sub-tasks as needed. Specific webrev comment: * Can you please split the long line in TunnelThroughProxy.java Suggestion for similar changes while here: * http://cr.openjdk.java.net/~chegar/8220083.additional/index.html -Chris. -------------- next part -------------- An HTML attachment was scrubbed... URL: From Alan.Bateman at oracle.com Tue Mar 12 12:30:55 2019 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Tue, 12 Mar 2019 12:30:55 +0000 Subject: 8220493: Prepare Socket/ServerSocket for alternative platform SocketImpl Message-ID: We have a branch in the sandbox named "niosocketimpl-branch" with a replacement for the underlying implementation used by java.net.Socket and ServerSocket. I've mentioned this in previous mails [1]. We also have a draft JEP [2]. I'd like to get the changes that allow for the platform SocketImpl to be replaced into jdk/jdk in advance of the JEP. The reasoning is to reduce the size of the overall patch, make the changes easier to review, and get some of the narly behavior changes out of the way before the main event. To that end, I've created JDK-8220493 [3] to bring the "preparatory changes" into jdk/jdk. A summary of the changes is: - ServerSocket is changed to use a platform SocketImpl by default, it used to use the SOCKS SocketImpl. - Socket use a SOCKS SocketImpl by default. The SOCKS SocketImpl now delegates to a platform SocketImpl rather than extending it. The HTTP SocketImpl is also changed to delegate to a platform SocketImpl. - ServerSocket.accept has been overhauled to disallow nonsensical combinations of SocketImpl. For example, it is nuts to create a ServerSocket using a custom SocketImpl and have it try to accept a connection with a platform SocketImpl. There is a big matrix of possible scenarios that are tested with a new combinations test. Chris, Michael and I spent time on a white board going through all the possible scenarios to make sure that all sane scenarios work as before, only the nonsensical comminations are disallowed. - Socket has been changed to wrap the input/output streams returned by the underlying SocketImpl so that closing of these streams will close the socket. This is important to allow for socket implementations outside of the java.net package but it requires changes to JFR as it instruments these changes. I've created a CSR [4] to document the subtle behavior changes. The webrev with the corresponding changes is here: ? http://cr.openjdk.java.net/~alanb/8220493/0/webrev/ -Alan [1] https://mail.openjdk.java.net/pipermail/net-dev/2019-January/012135.html [2] http://openjdk.java.net/jeps/8218559 [3] https://bugs.openjdk.java.net/browse/JDK-8220493 [4] https://bugs.openjdk.java.net/browse/JDK-8220494 From aeubanks at google.com Tue Mar 12 16:59:40 2019 From: aeubanks at google.com (Arthur Eubanks) Date: Tue, 12 Mar 2019 09:59:40 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> References: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> Message-ID: Thanks for creating the umbrella bug. Split long line. Added the HTTPTestServer.java and UrgentDataTest.java changes in Chris's suggestions. The other 2 involve URI/URLs, and there are a lot of those changes, will group them in a later change. PTAL: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.02/ On Tue, Mar 12, 2019 at 5:00 AM Chris Hegarty wrote: > Hi Arthur, > > > On 11 Mar 2019, at 18:14, Arthur Eubanks wrote: > > Updated copyright years (I asked around, it should be fine), updated > commit message. > http://cr.openjdk.java.net/~aeubanks/8220083/webrev.01 > > > This is a welcome improvement to the tests. Reviewed, with some minor > comments and additions below. > > It will not be easy to get all the JDK networking tests passing > successfully on IPv6-only environments ( ignoring the other combinations > for now ). But this is a good improvement, and hopefully the start of > a number of changes that add similar incremental improvements. To this > end, I've created an umbrella task, 8220499, to track these test changes > ( in one place ), and updated this issue, 8220083, to be a sub-task of > it. Let's add more sub-tasks as needed. > > Specific webrev comment: > * Can you please split the long line in TunnelThroughProxy.java > > Suggestion for similar changes while here: > * http://cr.openjdk.java.net/~chegar/8220083.additional/index.html > > -Chris. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris.hegarty at oracle.com Tue Mar 12 17:34:45 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Tue, 12 Mar 2019 17:34:45 +0000 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> Message-ID: <2E5265A6-BE91-4247-9078-7F6027B95CE1@oracle.com> Arthur, > On 12 Mar 2019, at 16:59, Arthur Eubanks wrote: > > Thanks for creating the umbrella bug. > > Split long line. > Added the HTTPTestServer.java and UrgentDataTest.java changes in Chris's suggestions. Thanks. > The other 2 involve URI/URLs, and there are a lot of those changes, will group them in a later change. That is true, and it is absolutely fine to leave them until a follow on. The reason I suggested the change is because almost all of the other HTTP Client tests run successfully on an IPv6-only environment. The reason is that the URL-string when converted to a URI has the square brackets added by URI.create. Anyway, not critical for now. > PTAL: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.02/ Looks good. You are probably all set, but if you need a sponsor just ask. -Chris. -------------- next part -------------- An HTML attachment was scrubbed... URL: From aeubanks at google.com Tue Mar 12 17:54:00 2019 From: aeubanks at google.com (Arthur Eubanks) Date: Tue, 12 Mar 2019 10:54:00 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: <2E5265A6-BE91-4247-9078-7F6027B95CE1@oracle.com> References: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> <2E5265A6-BE91-4247-9078-7F6027B95CE1@oracle.com> Message-ID: Thanks! Just curious, what tests did you run and under what environment? On Tue, Mar 12, 2019 at 10:34 AM Chris Hegarty wrote: > Arthur, > > On 12 Mar 2019, at 16:59, Arthur Eubanks wrote: > > Thanks for creating the umbrella bug. > > Split long line. > Added the HTTPTestServer.java and UrgentDataTest.java changes in Chris's > suggestions. > > > Thanks. > > The other 2 involve URI/URLs, and there are a lot of those changes, will > group them in a later change. > > > That is true, and it is absolutely fine to leave them until a follow on. > > The reason I suggested the change is because almost all of the other > HTTP Client tests run successfully on an IPv6-only environment. The > reason is that the URL-string when converted to a URI has the square > brackets added by URI.create. Anyway, not critical for now. > > PTAL: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.02/ > > > Looks good. > > You are probably all set, but if you need a sponsor just ask. > > -Chris. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris.hegarty at oracle.com Tue Mar 12 19:19:07 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Tue, 12 Mar 2019 19:19:07 +0000 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> <2E5265A6-BE91-4247-9078-7F6027B95CE1@oracle.com> Message-ID: <3D0B667F-339E-4184-A469-FD04C5310514@oracle.com> Arthur, > On 12 Mar 2019, at 17:54, Arthur Eubanks wrote: > > Thanks! > > Just curious, what tests did you run and under what environment? I ran all java/net, sun/net, com/sun/net/, and some nio. I'm have a bit of a hacky environment: a JDK build with IPV6_V6ONLY set to 1, and preferIPv6Addresses effectively forced. The /etc/hosts on my system returns IPv6 addresses for `localhost` and the machine host name. This env reproduces the same set of failures as you ( I assume from your webrev ), and more. It's just enough to get me started and able to review / help out. -Chris. From vyommani at gmail.com Wed Mar 13 03:04:13 2019 From: vyommani at gmail.com (Vyom Tiwari) Date: Wed, 13 Mar 2019 08:34:13 +0530 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> Message-ID: Hi Arthur, Changes looks good to me, one minor comment, in HTTPTestServer.java we can avoid new local variable (InetAddress address) . Thanks, Vyom On Tue, Mar 12, 2019 at 10:30 PM Arthur Eubanks wrote: > Thanks for creating the umbrella bug. > > Split long line. > Added the HTTPTestServer.java and UrgentDataTest.java changes in Chris's > suggestions. The other 2 involve URI/URLs, and there are a lot of those > changes, will group them in a later change. > > PTAL: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.02/ > > > On Tue, Mar 12, 2019 at 5:00 AM Chris Hegarty > wrote: > >> Hi Arthur, >> >> >> On 11 Mar 2019, at 18:14, Arthur Eubanks wrote: >> >> Updated copyright years (I asked around, it should be fine), updated >> commit message. >> http://cr.openjdk.java.net/~aeubanks/8220083/webrev.01 >> >> >> This is a welcome improvement to the tests. Reviewed, with some minor >> comments and additions below. >> >> It will not be easy to get all the JDK networking tests passing >> successfully on IPv6-only environments ( ignoring the other combinations >> for now ). But this is a good improvement, and hopefully the start of >> a number of changes that add similar incremental improvements. To this >> end, I've created an umbrella task, 8220499, to track these test changes >> ( in one place ), and updated this issue, 8220083, to be a sub-task of >> it. Let's add more sub-tasks as needed. >> >> Specific webrev comment: >> * Can you please split the long line in TunnelThroughProxy.java >> >> Suggestion for similar changes while here: >> * http://cr.openjdk.java.net/~chegar/8220083.additional/index.html >> >> -Chris. >> > -- Thanks, Vyom -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris.hegarty at oracle.com Wed Mar 13 12:09:50 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Wed, 13 Mar 2019 12:09:50 +0000 Subject: RFR 8220475: Malformed copyright header in LinuxSocketOptions.java, MacOSXSocketOptions.java and MacOSXSocketOptions.c Message-ID: <8E48CA71-B422-42CC-B9F2-C0FD8CA3635B@oracle.com> Trivially, there should be a comma after the year. Just add it. diff --git a/src/jdk.net/linux/classes/jdk/net/LinuxSocketOptions.java b/src/jdk.net/linux/classes/jdk/net/LinuxSocketOptions.java --- a/src/jdk.net/linux/classes/jdk/net/LinuxSocketOptions.java +++ b/src/jdk.net/linux/classes/jdk/net/LinuxSocketOptions.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2017, 2018, 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 diff --git a/src/jdk.net/macosx/classes/jdk/net/MacOSXSocketOptions.java b/src/jdk.net/macosx/classes/jdk/net/MacOSXSocketOptions.java --- a/src/jdk.net/macosx/classes/jdk/net/MacOSXSocketOptions.java +++ b/src/jdk.net/macosx/classes/jdk/net/MacOSXSocketOptions.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2018, 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 diff --git a/src/jdk.net/macosx/native/libextnet/MacOSXSocketOptions.c b/src/jdk.net/macosx/native/libextnet/MacOSXSocketOptions.c --- a/src/jdk.net/macosx/native/libextnet/MacOSXSocketOptions.c +++ b/src/jdk.net/macosx/native/libextnet/MacOSXSocketOptions.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2018, 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 -Chris. -------------- next part -------------- An HTML attachment was scrubbed... URL: From daniel.fuchs at oracle.com Wed Mar 13 12:13:59 2019 From: daniel.fuchs at oracle.com (Daniel Fuchs) Date: Wed, 13 Mar 2019 12:13:59 +0000 Subject: RFR 8220475: Malformed copyright header in LinuxSocketOptions.java, MacOSXSocketOptions.java and MacOSXSocketOptions.c In-Reply-To: <8E48CA71-B422-42CC-B9F2-C0FD8CA3635B@oracle.com> References: <8E48CA71-B422-42CC-B9F2-C0FD8CA3635B@oracle.com> Message-ID: <830c6aa7-19f1-3aa5-4b5a-f3db89e504c4@oracle.com> Looks good Chris! -- daniel On 13/03/2019 12:09, Chris Hegarty wrote: > Trivially, there should be a comma after the year. Just add it. From Alan.Bateman at oracle.com Wed Mar 13 12:18:18 2019 From: Alan.Bateman at oracle.com (Alan Bateman) Date: Wed, 13 Mar 2019 12:18:18 +0000 Subject: RFR 8220475: Malformed copyright header in LinuxSocketOptions.java, MacOSXSocketOptions.java and MacOSXSocketOptions.c In-Reply-To: <8E48CA71-B422-42CC-B9F2-C0FD8CA3635B@oracle.com> References: <8E48CA71-B422-42CC-B9F2-C0FD8CA3635B@oracle.com> Message-ID: On 13/03/2019 12:09, Chris Hegarty wrote: > Trivially, there should be a comma after the year. Just add it. > Looks okay. From aeubanks at google.com Wed Mar 13 16:22:40 2019 From: aeubanks at google.com (Arthur Eubanks) Date: Wed, 13 Mar 2019 09:22:40 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> Message-ID: Hi Vyom, Sorry, the change already went in. I can do this in a followup change if you'd like. On Tue, Mar 12, 2019 at 8:04 PM Vyom Tiwari wrote: > Hi Arthur, > > Changes looks good to me, one minor comment, in HTTPTestServer.java we > can avoid new local variable (InetAddress address) . > > Thanks, > Vyom > > On Tue, Mar 12, 2019 at 10:30 PM Arthur Eubanks > wrote: > >> Thanks for creating the umbrella bug. >> >> Split long line. >> Added the HTTPTestServer.java and UrgentDataTest.java changes in Chris's >> suggestions. The other 2 involve URI/URLs, and there are a lot of those >> changes, will group them in a later change. >> >> PTAL: http://cr.openjdk.java.net/~aeubanks/8220083/webrev.02/ >> >> >> On Tue, Mar 12, 2019 at 5:00 AM Chris Hegarty >> wrote: >> >>> Hi Arthur, >>> >>> >>> On 11 Mar 2019, at 18:14, Arthur Eubanks wrote: >>> >>> Updated copyright years (I asked around, it should be fine), updated >>> commit message. >>> http://cr.openjdk.java.net/~aeubanks/8220083/webrev.01 >>> >>> >>> This is a welcome improvement to the tests. Reviewed, with some minor >>> comments and additions below. >>> >>> It will not be easy to get all the JDK networking tests passing >>> successfully on IPv6-only environments ( ignoring the other combinations >>> for now ). But this is a good improvement, and hopefully the start of >>> a number of changes that add similar incremental improvements. To this >>> end, I've created an umbrella task, 8220499, to track these test changes >>> ( in one place ), and updated this issue, 8220083, to be a sub-task of >>> it. Let's add more sub-tasks as needed. >>> >>> Specific webrev comment: >>> * Can you please split the long line in TunnelThroughProxy.java >>> >>> Suggestion for similar changes while here: >>> * http://cr.openjdk.java.net/~chegar/8220083.additional/index.html >>> >>> -Chris. >>> >> > > -- > Thanks, > Vyom > -------------- next part -------------- An HTML attachment was scrubbed... URL: From aeubanks at google.com Wed Mar 13 16:32:10 2019 From: aeubanks at google.com (Arthur Eubanks) Date: Wed, 13 Mar 2019 09:32:10 -0700 Subject: RFR: 8220585: Incorrect code in MulticastSocket sample code Message-ID: Hi, A fix for some sample code in MulticastSocket, which assumed that String.length() == String.getBytes().length, which is not true for non-ASCII Strings. http://cr.openjdk.java.net/~aeubanks/8220585/webrev.00 -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris.hegarty at oracle.com Wed Mar 13 17:04:57 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Wed, 13 Mar 2019 17:04:57 +0000 Subject: RFR 8220598: Malformed copyright year range in a few files in java.base Message-ID: <9787F277-114D-415C-83B6-2813B4E51108@oracle.com> Trivially, there should be a comma after the year. Just add it. $ hg diff src/java.base/share/classes/jdk/ src/java.base/share/classes/sun diff --git a/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java b/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java --- a/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java +++ b/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2017 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2017, 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 diff --git a/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java b/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java --- a/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java +++ b/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003, 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2003, 2018, 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 diff --git a/src/java.base/share/classes/sun/security/util/IOUtils.java b/src/java.base/share/classes/sun/security/util/IOUtils.java --- a/src/java.base/share/classes/sun/security/util/IOUtils.java +++ b/src/java.base/share/classes/sun/security/util/IOUtils.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009, 2017 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2009, 2017, 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 -Chris. -------------- next part -------------- An HTML attachment was scrubbed... URL: From horvath.peter.gergely at gmail.com Wed Mar 13 17:07:26 2019 From: horvath.peter.gergely at gmail.com (=?UTF-8?Q?Horv=C3=A1th_P=C3=A9ter_Gergely?=) Date: Wed, 13 Mar 2019 18:07:26 +0100 Subject: 8207846 Generalize the jdk.net.includeInExceptions security property: documentation? Message-ID: Hi All, I think having the enhanced reporting of socket connection failures driven by "jdk.net.includeInExceptions" property is a huge step forward with regards to the ability to debug Java networking applications. For me however one piece seems to be missing: I am not sure if there is any kind of user documentation available, where this property (and other ones) are documented. Do we have any kind of user-visible documentation that mentions these properties at all? (A quick Google search yields basically only issues tracked in the JDK Jira and some indexed source codes and that's it.) If not, do you have any plan to document these properties somewhere? Thanks, Peter -------------- next part -------------- An HTML attachment was scrubbed... URL: From daniel.fuchs at oracle.com Wed Mar 13 17:09:55 2019 From: daniel.fuchs at oracle.com (Daniel Fuchs) Date: Wed, 13 Mar 2019 17:09:55 +0000 Subject: RFR 8220598: Malformed copyright year range in a few files in java.base In-Reply-To: <9787F277-114D-415C-83B6-2813B4E51108@oracle.com> References: <9787F277-114D-415C-83B6-2813B4E51108@oracle.com> Message-ID: Looks good to me Chris! cheers, -- daniel On 13/03/2019 17:04, Chris Hegarty wrote: > Trivially, there should be a comma after the year. Just add it. From lance.andersen at oracle.com Wed Mar 13 17:10:57 2019 From: lance.andersen at oracle.com (Lance Andersen) Date: Wed, 13 Mar 2019 13:10:57 -0400 Subject: RFR 8220598: Malformed copyright year range in a few files in java.base In-Reply-To: <9787F277-114D-415C-83B6-2813B4E51108@oracle.com> References: <9787F277-114D-415C-83B6-2813B4E51108@oracle.com> Message-ID: <839316E6-9ABA-4000-B3C8-A347E536740A@oracle.com> +1 > On Mar 13, 2019, at 1:04 PM, Chris Hegarty wrote: > > Trivially, there should be a comma after the year. Just add it. > > > $ hg diff src/java.base/share/classes/jdk/ src/java.base/share/classes/sun > diff --git a/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java b/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java > --- a/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java > +++ b/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java > @@ -1,5 +1,5 @@ > /* > - * Copyright (c) 2015, 2017 Oracle and/or its affiliates. All rights reserved. > + * Copyright (c) 2015, 2017, 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 > diff --git a/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java b/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java > --- a/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java > +++ b/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java > @@ -1,5 +1,5 @@ > /* > - * Copyright (c) 2003, 2018 Oracle and/or its affiliates. All rights reserved. > + * Copyright (c) 2003, 2018, 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 > diff --git a/src/java.base/share/classes/sun/security/util/IOUtils.java b/src/java.base/share/classes/sun/security/util/IOUtils.java > --- a/src/java.base/share/classes/sun/security/util/IOUtils.java > +++ b/src/java.base/share/classes/sun/security/util/IOUtils.java > @@ -1,5 +1,5 @@ > /* > - * Copyright (c) 2009, 2017 Oracle and/or its affiliates. All rights reserved. > + * Copyright (c) 2009, 2017, 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 > > -Chris. Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037 Oracle Java Engineering 1 Network Drive Burlington, MA 01803 Lance.Andersen at oracle.com -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: oracle_sig_logo.gif Type: image/gif Size: 658 bytes Desc: not available URL: From martinrb at google.com Wed Mar 13 17:15:11 2019 From: martinrb at google.com (Martin Buchholz) Date: Wed, 13 Mar 2019 10:15:11 -0700 Subject: RFR: 8220585: Incorrect code in MulticastSocket sample code In-Reply-To: References: Message-ID: Looks good to me. On Wed, Mar 13, 2019 at 9:34 AM Arthur Eubanks wrote: > Hi, > > A fix for some sample code in MulticastSocket, which assumed that > String.length() == String.getBytes().length, which is not true for > non-ASCII Strings. > > http://cr.openjdk.java.net/~aeubanks/8220585/webrev.00 > -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris.hegarty at oracle.com Wed Mar 13 17:17:15 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Wed, 13 Mar 2019 17:17:15 +0000 Subject: RFR: 8220585: Incorrect code in MulticastSocket sample code In-Reply-To: References: Message-ID: <28ae4898-a63e-a2e8-b293-49aa227435f5@oracle.com> Arthur, On 13/03/2019 16:32, Arthur Eubanks wrote: > Hi, > > A fix for some sample code in MulticastSocket, which assumed that > String.length() == String.getBytes().length, which is not true for > non-ASCII Strings. > > http://cr.openjdk.java.net/~aeubanks/8220585/webrev.00 Looks good. Thanks. -Chris. From martinrb at google.com Wed Mar 13 17:29:02 2019 From: martinrb at google.com (Martin Buchholz) Date: Wed, 13 Mar 2019 10:29:02 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: <3D0B667F-339E-4184-A469-FD04C5310514@oracle.com> References: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> <2E5265A6-BE91-4247-9078-7F6027B95CE1@oracle.com> <3D0B667F-339E-4184-A469-FD04C5310514@oracle.com> Message-ID: On Tue, Mar 12, 2019 at 12:21 PM Chris Hegarty wrote: > > > Just curious, what tests did you run and under what environment? > > I ran all java/net, sun/net, com/sun/net/, and some nio. I'm have a bit > of a hacky environment: a JDK build with IPV6_V6ONLY set to 1, and > preferIPv6Addresses effectively forced. The /etc/hosts on my system > returns IPv6 addresses for `localhost` and the machine host name. This > env reproduces the same set of failures as you ( I assume from your > webrev ), and more. It's just enough to get me started and able to > review / help out. > The difficulty of testing networking environments is an impediment to progress. Chris, you might want to publish your hacky changes as an experimental patch in cr.openjdk. At Google, we have our own hacks to test ipv6-only environments, based on either LD_PRELOAD or eBPF (but it would take work to share them even in minimally functional form) -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris.hegarty at oracle.com Wed Mar 13 17:32:27 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Wed, 13 Mar 2019 17:32:27 +0000 Subject: Regarding 8220575: Correctly format test URI's that contain a retrieved IPv6 address Message-ID: <79336212-a65a-152e-3a92-8867668c82b0@oracle.com> I filed the 8220575 [1] that tracks "Correctly format test URI's that contain a retrieved IPv6 address" Regarding fixing tests that incorrectly use IPv6 addresses in URL's or URI's, without enclosing the address within '[' and ']' ( square brackets ). These IPv6 addresses typically come from either of: 1) the InetAddress.getLoopbackAddress().getHostAddress(), or 2) InetAddress.getLocalHost().getHostAddress(). I think that is most cases it should be possible to just replace the use of `getHostAddress` with `getHostName`. This defers the actual lookup to the system configured name service ( rather than trying to encode IPv6 addresses in the test ). Also, URL's / URI's that hardcode "127.0.0.1", can ( in most cases ) just be replaced with InetAddress.getLoopbackAddress().getHostName(). I've followed the above advise on a few tests and it seems to be working out ok, so far. -Chris. [1] https://bugs.openjdk.java.net/browse/JDK-8220575 From aeubanks at google.com Wed Mar 13 17:43:41 2019 From: aeubanks at google.com (Arthur Eubanks) Date: Wed, 13 Mar 2019 10:43:41 -0700 Subject: Regarding 8220575: Correctly format test URI's that contain a retrieved IPv6 address In-Reply-To: <79336212-a65a-152e-3a92-8867668c82b0@oracle.com> References: <79336212-a65a-152e-3a92-8867668c82b0@oracle.com> Message-ID: SGTM. Sort of related: Some tests specifically test the IP address as opposed to "localhost" (e.g. some security tests), we'll need to figure out what to do with those. Martin suggested looping through all available loopback addresses rather than hardcoding them. In that case we'll need helper test functions to return loopback addresses (and test that it actually returns all available loopback addresses). On Wed, Mar 13, 2019 at 10:33 AM Chris Hegarty wrote: > I filed the 8220575 [1] that tracks "Correctly format test URI's that > contain a retrieved IPv6 address" > > Regarding fixing tests that incorrectly use IPv6 addresses in URL's or > URI's, without enclosing the address within '[' and ']' ( square > brackets ). These IPv6 addresses typically come from either of: 1) > the InetAddress.getLoopbackAddress().getHostAddress(), or 2) > InetAddress.getLocalHost().getHostAddress(). I think that is most cases > it should be possible to just replace the use of `getHostAddress` with > `getHostName`. This defers the actual lookup to the system configured > name service ( rather than trying to encode IPv6 addresses in the > test ). > > Also, URL's / URI's that hardcode "127.0.0.1", can ( in most cases ) > just be replaced with InetAddress.getLoopbackAddress().getHostName(). > > I've followed the above advise on a few tests and it seems to be working > out ok, so far. > > -Chris. > > [1] https://bugs.openjdk.java.net/browse/JDK-8220575 > -------------- next part -------------- An HTML attachment was scrubbed... URL: From daniel.fuchs at oracle.com Wed Mar 13 18:22:22 2019 From: daniel.fuchs at oracle.com (Daniel Fuchs) Date: Wed, 13 Mar 2019 18:22:22 +0000 Subject: Regarding 8220575: Correctly format test URI's that contain a retrieved IPv6 address In-Reply-To: <79336212-a65a-152e-3a92-8867668c82b0@oracle.com> References: <79336212-a65a-152e-3a92-8867668c82b0@oracle.com> Message-ID: <68cb6665-8c57-0b00-84b7-ae396471092a@oracle.com> Hi Chris, On 13/03/2019 17:32, Chris Hegarty wrote: > I think that is most cases > it should be possible to just replace the use of `getHostAddress` with > `getHostName`. This defers the actual lookup to the system configured > name service ( rather than trying to encode IPv6 addresses in the > test ) I think I'd prefer to use getHostAddress() and one of the multi arg constructors for URI/URL instead, as it makes it more explicit that you're using the same address on both side of the connection. Are we otherwise sure that the hostname would resolve to the exact same address? For instance: jshell> InetAddress.getLoopbackAddress().getHostName() $7 ==> "localhost" jshell> InetAddress.getAllByName("localhost"); $8 ==> InetAddress[3] { localhost/127.0.0.1, localhost/0:0:0:0:0:0:0:1, localhost/fe80:0:0:0:0:0:0:1%1 } best regards, -- daniel From daniel.fuchs at oracle.com Wed Mar 13 18:40:18 2019 From: daniel.fuchs at oracle.com (Daniel Fuchs) Date: Wed, 13 Mar 2019 18:40:18 +0000 Subject: Regarding 8220575: Correctly format test URI's that contain a retrieved IPv6 address In-Reply-To: References: <79336212-a65a-152e-3a92-8867668c82b0@oracle.com> Message-ID: <4303c4a4-381d-f0f7-e66b-27b33aaa8cbf@oracle.com> Hi Arthur, On 13/03/2019 17:43, Arthur Eubanks wrote: > Martin suggested looping through all available loopback addresses rather > than hardcoding them. In that case we'll need helper test functions to > return loopback addresses (and test that it actually returns all > available loopback addresses). Though I agree that in a ideal world that's what we would like to do, I am afraid that this would increase the possibility of getting random intermittent failures when running our tests on tests farms. It would certainly increase the opportunity of stumbling on some bad configuration issues. Also having several tests running concurrently when one test binds on the wildcard while another test concurrently binds on the local host address (or the loopback) is a known recipe for instability due to the underlying system port reuse strategy. In addition some of our tests (in httpclient) are already pretty greedy trying to cover the matrix of http / https / http 1.1 / http 2 multiplied by all the different test cases that the test wants to test - so running them over all possible loopbacks would probably become a maintenance hassle: We already had to split several of them (sometimes a bit artificially) because they were going over the reasonable resource quota when run on some exotic configuration (like fastdebug + Xcomp for instance). So I'm not sure how feasible such an idea would be. best regards, -- daniel From chris.hegarty at oracle.com Wed Mar 13 18:45:04 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Wed, 13 Mar 2019 18:45:04 +0000 Subject: Regarding 8220575: Correctly format test URI's that contain a retrieved IPv6 address In-Reply-To: <68cb6665-8c57-0b00-84b7-ae396471092a@oracle.com> References: <79336212-a65a-152e-3a92-8867668c82b0@oracle.com> <68cb6665-8c57-0b00-84b7-ae396471092a@oracle.com> Message-ID: Daniel, On 13/03/2019 18:22, Daniel Fuchs wrote: > Hi Chris, > > On 13/03/2019 17:32, Chris Hegarty wrote: >> I think that is most cases >> it should be possible to just replace the use of `getHostAddress` with >> `getHostName`. This defers the actual lookup to the system configured >> name service ( rather than trying to encode IPv6 addresses in the >> test ) > I think I'd prefer to use getHostAddress() and one of the multi > arg constructors for? URI/URL instead, as it makes it more explicit > that you're using the same address on both side of the connection. > > Are we otherwise sure that the hostname would resolve to the > exact same address? > > For instance: > > jshell> InetAddress.getLoopbackAddress().getHostName() > $7 ==> "localhost" > > jshell> InetAddress.getAllByName("localhost"); > $8 ==> InetAddress[3] { > ????????? localhost/127.0.0.1, > ????????? localhost/0:0:0:0:0:0:0:1, > ????????? localhost/fe80:0:0:0:0:0:0:1%1 > ?????? } Good point. Many test ( that don't explicitly test binding or particulars of encoding of the address in the URI / URL ), simply don't care about this detail. They're likely testing something in the internal implementation of the protocol handler, or something. But you do raise a good point, which relates to test stability; the client and server sides of the tests need to be using the same interface / address ). While testing, I have observed some URIs similar to http://[0:0:0:0:0:0:0:1]:46009/zero/xxyy, in the log files. It's comforting to know the exact address that is in use. What I dislike about such an approach is its verbosity in the test code, e.g. static URL urlFor(int port, String path) throws Exception { return new URI("http", null, loopbackAddress.getHostAddress(), port, path, null, null).toURL(); } This is a typical example of usage in tests, where the protocol being tested is `http`. The host address here will be correctly enclosed by square brackets if needed. Alternative ( shorter, hack ): String host = loopbackAddress.getHostAddress(); if (host.contains(":")) host = "[" + host + "]"; Regardless of the outcome, the use of a test library function will likely not help much, as it adds jtreg tag verbosity and build complexity that is probably more verbose than either of the above. -Chris. From chris.hegarty at oracle.com Wed Mar 13 18:48:29 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Wed, 13 Mar 2019 18:48:29 +0000 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> <2E5265A6-BE91-4247-9078-7F6027B95CE1@oracle.com> <3D0B667F-339E-4184-A469-FD04C5310514@oracle.com> Message-ID: Martin, On 13/03/2019 17:29, Martin Buchholz wrote: > > > ... > > The difficulty of testing networking environments is an impediment to > progress. > Chris, you might want to publish your hacky changes as an experimental > patch in cr.openjdk. I will do this, but, as I said, it is just a hack. > At Google, we have our own hacks to test ipv6-only environments, based > on either LD_PRELOAD or eBPF (but it would take work to share them even > in minimally functional form) Maybe I can produce something similar and publish it? So you intercept setsocktopt, lookups? What else? -Chris. From martinrb at google.com Wed Mar 13 18:57:14 2019 From: martinrb at google.com (Martin Buchholz) Date: Wed, 13 Mar 2019 11:57:14 -0700 Subject: RFR: 8220083: Use InetAddress.getLoopbackAddress() in place of 127.0.0.1 for some tests In-Reply-To: References: <523F8E8E-B810-410C-8505-75DF9BC43C28@oracle.com> <2E5265A6-BE91-4247-9078-7F6027B95CE1@oracle.com> <3D0B667F-339E-4184-A469-FD04C5310514@oracle.com> Message-ID: On Wed, Mar 13, 2019 at 11:49 AM Chris Hegarty wrote: > > > At Google, we have our own hacks to test ipv6-only environments, based > > on either LD_PRELOAD or eBPF (but it would take work to share them even > > in minimally functional form) > > Maybe I can produce something similar and publish it? So you intercept > setsocktopt, lookups? What else? > Here's a code snippet with the list: static int (*libc_socket)(int, int, int); static int (*libc_setsockopt)(int, int, int, const void *, socklen_t); static int (*libc_getifaddrs)(struct ifaddrs **); -------------- next part -------------- An HTML attachment was scrubbed... URL: From weijun.wang at oracle.com Thu Mar 14 01:14:55 2019 From: weijun.wang at oracle.com (Weijun Wang) Date: Thu, 14 Mar 2019 09:14:55 +0800 Subject: RFR 8220598: Malformed copyright year range in a few files in java.base In-Reply-To: <839316E6-9ABA-4000-B3C8-A347E536740A@oracle.com> References: <9787F277-114D-415C-83B6-2813B4E51108@oracle.com> <839316E6-9ABA-4000-B3C8-A347E536740A@oracle.com> Message-ID: +1 (on the security class). Thanks, Max > On Mar 14, 2019, at 1:10 AM, Lance Andersen wrote: > > +1 >> On Mar 13, 2019, at 1:04 PM, Chris Hegarty wrote: >> >> Trivially, there should be a comma after the year. Just add it. >> >> >> $ hg diff src/java.base/share/classes/jdk/ src/java.base/share/classes/sun >> diff --git a/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java b/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java >> --- a/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java >> +++ b/src/java.base/share/classes/jdk/internal/util/ArraysSupport.java >> @@ -1,5 +1,5 @@ >> /* >> - * Copyright (c) 2015, 2017 Oracle and/or its affiliates. All rights reserved. >> + * Copyright (c) 2015, 2017, 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 >> diff --git a/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java b/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java >> --- a/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java >> +++ b/src/java.base/share/classes/sun/net/spi/DefaultProxySelector.java >> @@ -1,5 +1,5 @@ >> /* >> - * Copyright (c) 2003, 2018 Oracle and/or its affiliates. All rights reserved. >> + * Copyright (c) 2003, 2018, 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 >> diff --git a/src/java.base/share/classes/sun/security/util/IOUtils.java b/src/java.base/share/classes/sun/security/util/IOUtils.java >> --- a/src/java.base/share/classes/sun/security/util/IOUtils.java >> +++ b/src/java.base/share/classes/sun/security/util/IOUtils.java >> @@ -1,5 +1,5 @@ >> /* >> - * Copyright (c) 2009, 2017 Oracle and/or its affiliates. All rights reserved. >> + * Copyright (c) 2009, 2017, 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 >> >> -Chris. > > > > Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037 > Oracle Java Engineering > 1 Network Drive > Burlington, MA 01803 > Lance.Andersen at oracle.com > > > From martinrb at google.com Thu Mar 14 01:45:47 2019 From: martinrb at google.com (Martin Buchholz) Date: Wed, 13 Mar 2019 18:45:47 -0700 Subject: Regarding 8220575: Correctly format test URI's that contain a retrieved IPv6 address In-Reply-To: <68cb6665-8c57-0b00-84b7-ae396471092a@oracle.com> References: <79336212-a65a-152e-3a92-8867668c82b0@oracle.com> <68cb6665-8c57-0b00-84b7-ae396471092a@oracle.com> Message-ID: On Wed, Mar 13, 2019 at 11:24 AM Daniel Fuchs wrote: > > jshell> InetAddress.getLoopbackAddress().getHostName() > $7 ==> "localhost" > > jshell> InetAddress.getAllByName("localhost"); > $8 ==> InetAddress[3] { > localhost/127.0.0.1, > localhost/0:0:0:0:0:0:0:1, > localhost/fe80:0:0:0:0:0:0:1%1 > } > Thanks for that lesson - TIL. Despite being unfamiliar with networking code and test machines at Oracle, I suggest: - misconfigured test machines that don't work with their advertised interfaces is unacceptable - just fix them! - tests that don't care much about which loopback connection they get could choose one randomly, via a test library method. I like this sort of test randomness, despite the possible flakiness. - for tests where you do want coverage of both ipv4 and ipv6 interfaces, it seems best to loop over all the available ones. - I think "localhost" is more than a convention - it's a standard, but is it recommended in tests to use InetAddress.getLoopbackAddress().getHostName() instead of hardcoded "localhost"? I know test engineering is hard work! -------------- next part -------------- An HTML attachment was scrubbed... URL: From chris.hegarty at oracle.com Thu Mar 14 09:43:56 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Thu, 14 Mar 2019 09:43:56 +0000 Subject: RFR 8213912: Semantic typo in HttpExchange.java Message-ID: <4FE50F37-AB40-4109-AA0B-AC9819A152F0@oracle.com> In the class-level description for com.sun.net.httpserver.HttpExchange there is a typo related to the request body input stream, that may cause confusion. It should be fixed. The typical life-cycle of an exchange, as described, should advise the reader that the request body input stream *SHOULD* be closed explicitly. There is some additional auto-magic that may close the stream when the exchange or its response body output stream is closed, but the advise to the reader should be to close the stream explicitly ( as any other action is more error-prone and adds additional cognitive load on the reader ). diff --git a/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java b/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java --- a/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java +++ b/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java @@ -41,11 +41,11 @@ * The typical life-cycle of a HttpExchange is shown in the sequence * below. *

  1. {@link #getRequestMethod()} to determine the command *
  2. {@link #getRequestHeaders()} to examine the request headers (if needed) *
  3. {@link #getRequestBody()} returns a {@link java.io.InputStream} for reading the request body. - * After reading the request body, the stream is close. + * After reading the request body, the stream should be closed. *
  4. {@link #getResponseHeaders()} to set any response headers, except content-length *
  5. {@link #sendResponseHeaders(int,long)} to send the response headers. Must be called before * next step. *
  6. {@link #getResponseBody()} to get a {@link java.io.OutputStream} to send the response body. * When the response body has been written, the stream must be closed to terminate the exchange. Bug: https://bugs.openjdk.java.net/browse/JDK-8213912 -Chris. From daniel.fuchs at oracle.com Thu Mar 14 11:10:15 2019 From: daniel.fuchs at oracle.com (Daniel Fuchs) Date: Thu, 14 Mar 2019 11:10:15 +0000 Subject: RFR 8213912: Semantic typo in HttpExchange.java In-Reply-To: <4FE50F37-AB40-4109-AA0B-AC9819A152F0@oracle.com> References: <4FE50F37-AB40-4109-AA0B-AC9819A152F0@oracle.com> Message-ID: <181d0294-1613-0c14-e7f7-a4f45c674006@oracle.com> Hi Chris, Thanks for fixing this, it is an important distinction! (and I like John's description of the issue :-)) I am wondering though - whether there's a relationship with this bug, and JDK-8180754 [1]. best regards, -- daniel [1] https://bugs.openjdk.java.net/browse/JDK-8180754 On 14/03/2019 09:43, Chris Hegarty wrote: > In the class-level description for com.sun.net.httpserver.HttpExchange > there is a typo related to the request body input stream, that may cause > confusion. It should be fixed. > > The typical life-cycle of an exchange, as described, should advise the > reader that the request body input stream *SHOULD* be closed explicitly. > There is some additional auto-magic that may close the stream when > the exchange or its response body output stream is closed, but the > advise to the reader should be to close the stream explicitly ( as any > other action is more error-prone and adds additional cognitive load on > the reader ). > > > diff --git a/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java b/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java > --- a/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java > +++ b/src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpExchange.java > @@ -41,11 +41,11 @@ > * The typical life-cycle of a HttpExchange is shown in the sequence > * below. > *
    1. {@link #getRequestMethod()} to determine the command > *
    2. {@link #getRequestHeaders()} to examine the request headers (if needed) > *
    3. {@link #getRequestBody()} returns a {@link java.io.InputStream} for reading the request body. > - * After reading the request body, the stream is close. > + * After reading the request body, the stream should be closed. > *
    4. {@link #getResponseHeaders()} to set any response headers, except content-length > *
    5. {@link #sendResponseHeaders(int,long)} to send the response headers. Must be called before > * next step. > *
    6. {@link #getResponseBody()} to get a {@link java.io.OutputStream} to send the response body. > * When the response body has been written, the stream must be closed to terminate the exchange. > > Bug: > https://bugs.openjdk.java.net/browse/JDK-8213912 > > -Chris. > From chris.hegarty at oracle.com Thu Mar 14 11:31:39 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Thu, 14 Mar 2019 11:31:39 +0000 Subject: RFR 8213912: Semantic typo in HttpExchange.java In-Reply-To: <181d0294-1613-0c14-e7f7-a4f45c674006@oracle.com> References: <4FE50F37-AB40-4109-AA0B-AC9819A152F0@oracle.com> <181d0294-1613-0c14-e7f7-a4f45c674006@oracle.com> Message-ID: <7CD14FFE-1647-45B6-9E5E-B072406B8137@oracle.com> Daniel, > On 14 Mar 2019, at 11:10, Daniel Fuchs wrote: > > Hi Chris, > > Thanks for fixing this, it is an important distinction! Thanks for the review. > (and I like John's description of the issue :-)) > > I am wondering though - whether there's a relationship with > this bug, and JDK-8180754 [1]. The issues are somewhat related, but orthogonal. It feels like 8180754 should remove the erroneous assertion, but I would need to spend a little more time on it to know for sure. -Chris. From chris.hegarty at oracle.com Thu Mar 14 16:40:45 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Thu, 14 Mar 2019 16:40:45 +0000 Subject: Regarding 8220575: Correctly format test URI's that contain a retrieved IPv6 address In-Reply-To: References: <79336212-a65a-152e-3a92-8867668c82b0@oracle.com> <68cb6665-8c57-0b00-84b7-ae396471092a@oracle.com> Message-ID: It's just a hack, but enough to get me started so I can asses some of what is needed to support running the tests on an IPv6-only environment. http://cr.openjdk.java.net/~chegar/ipv6-only-hack/ My /etc/hosts file has entries for `localhost` and the _host_, that return `::1`. This is enough to get started, but it will run out of road quite soon. And it will break some things. Let's work towards getting a better solution. Also, we will need test library support for determining whether the platform supports: 1) IPv4, or 2) IPv6, or 3) IPv4&IPv6. I filed 8220673 [1] to tracks this. --- Regarding what to do with URL's in test. I tried a few different approaches, I am leaning towards: String host = loopbackAddress.getHostAddress(); if (host.contains(":")) host = "[" + host + "]"; Since it: 1) is relatively short and concise, and 2) ensures, in many cases, that the client and server use the same IP address, and 3) clearly shows the actual IP protocol in use, e.g. http://[0:0:0:0:0:0:0:1]:46009/zero/xxyy A sample of some tests that have been updated as above: http://cr.openjdk.java.net/~chegar/8220575/webrev.0.1/ (not too bad!) -Chris. P.S. I ran into an implementation bug and filed, 8220663: "Incorrect handling of IPv6 addresses in Socket(Proxy.HTTP)" - the fix is straight forward. [1] https://bugs.openjdk.java.net/browse/JDK-8220673 From chris.hegarty at oracle.com Thu Mar 14 16:47:11 2019 From: chris.hegarty at oracle.com (Chris Hegarty) Date: Thu, 14 Mar 2019 16:47:11 +0000 Subject: RFR 8179549: Typo in network properties documentation Message-ID: Trivial typo fix. diff --git a/src/java.base/share/classes/java/net/doc-files/net-properties.html b/src/java.base/share/classes/java/net/doc-files/net-properties.html --- a/src/java.base/share/classes/java/net/doc-files/net-properties.html +++ b/src/java.base/share/classes/java/net/doc-files/net-properties.html @@ -1,6 +1,6 @@