hg: jdk8/tl/jdk: 8017109: Cleanup overrides warning in src/solaris/classes/sun/print/AttributeClass.java
Changeset: 0d27309a87e0 Author:dxu Date: 2013-08-15 14:11 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/0d27309a87e0 8017109: Cleanup overrides warning in src/solaris/classes/sun/print/AttributeClass.java Reviewed-by: jgodinez ! src/solaris/classes/sun/print/AttributeClass.java
hg: jdk8/tl/jdk: 4858457: File.getCanonicalPath() throws IOException when invoked with "nul" (win)
Changeset: 5bb196aa183c Author:dxu Date: 2013-08-15 12:36 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/5bb196aa183c 4858457: File.getCanonicalPath() throws IOException when invoked with "nul" (win) Reviewed-by: alanb ! src/windows/native/java/io/canonicalize_md.c ! test/java/io/File/WinDeviceName.java
hg: jdk8/tl/jdk: 2 new changesets
Changeset: b4645069238a Author:vinnie Date: 2013-08-15 19:49 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/b4645069238a 8023108: Remove ShortRSAKey1024.sh from ProblemList.txt Reviewed-by: mullan ! test/ProblemList.txt Changeset: 3211caab58ba Author:vinnie Date: 2013-08-15 19:56 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/3211caab58ba Merge
Re: Code review request, 8020842 IDN do not throw IAE when hostname ends with a trailing dot
On Thu, Aug 15, 2013 at 10:08:35AM -0700, Mike Duigou wrote: > I've been confused through this discussion as to why a trailing dot would be > regarded as illegal. > > Historically a trailing dot has been frequently (though not universally) used > to denote a fully qualified domain name. > > https://en.wikipedia.org/wiki/Fully_qualified_domain_name > > Is this use now illegal/unsupported/invalid? Does having a trailing dot > conflict with other parts of the IDN specification? > > Mike This is why some of us were protesting the code which disallowed the trailing '.', and eventually the code was changed to allow it to be present. Matthew.
Re: Code review request, 8020842 IDN do not throw IAE when hostname ends with a trailing dot
On Aug 16, 2013, at 1:08, Mike Duigou wrote: > I've been confused through this discussion as to why a trailing dot would be > regarded as illegal. > The discussion is too long to find the final decision easily. A IDN with trailing dot should be regarded as legal IDN. This update is trying to fix this. For example, "." and "example.com." are legal IDN, and IDN.toASCII() should be return the legal name accordingly. However, per the specification of Server Name Indication of TLS extension, a hostname should not end with trailing dot. So in SNIHostName, we will check the return value of IDN.toASCII() to filter out hostnames with trailing dots. This fix is trying to have IDN working with tailing dot and empty label correctly. The previous code of SNIHostName will work as expected if IDN can handle trailing dot properly. Thanks, Xuelei > Historically a trailing dot has been frequently (though not universally) used > to denote a fully qualified domain name. > > https://en.wikipedia.org/wiki/Fully_qualified_domain_name > > Is this use now illegal/unsupported/invalid? Does having a trailing dot > conflict with other parts of the IDN specification? > > Mike > > On Aug 13 2013, at 01:29 , Xuelei Fan wrote: > >> Can I get an additional code review from networking team? >> >> Thanks, >> Xuelei >> >> On 8/12/2013 2:07 PM, Weijun Wang wrote: >>> new webrev: http://cr.openjdk.java.net/~xuelei/8020842/webrev.06/ >
hg: jdk8/tl/jdk: 7154662: {CRC32, Adler32}.update(byte[] b, int off, int len): undocumented ArrayIndexOutOfBoundsException
Changeset: 6c307b4d0dd8 Author:sherman Date: 2013-08-15 10:41 -0700 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/6c307b4d0dd8 7154662: {CRC32, Adler32}.update(byte[] b, int off, int len): undocumented ArrayIndexOutOfBoundsException Summary: to add the throws clause Reviewed-by: alanb, chegar ! src/share/classes/java/util/zip/Adler32.java ! src/share/classes/java/util/zip/CRC32.java
Re: Code review request, 8020842 IDN do not throw IAE when hostname ends with a trailing dot
I've been confused through this discussion as to why a trailing dot would be regarded as illegal. Historically a trailing dot has been frequently (though not universally) used to denote a fully qualified domain name. https://en.wikipedia.org/wiki/Fully_qualified_domain_name Is this use now illegal/unsupported/invalid? Does having a trailing dot conflict with other parts of the IDN specification? Mike On Aug 13 2013, at 01:29 , Xuelei Fan wrote: > Can I get an additional code review from networking team? > > Thanks, > Xuelei > > On 8/12/2013 2:07 PM, Weijun Wang wrote: >> new webrev: http://cr.openjdk.java.net/~xuelei/8020842/webrev.06/ >
hg: jdk8/tl/jdk: 8022126: Remove throws SocketException from DatagramPacket constructors accepting SocketAddress
Changeset: e7137695dce3 Author:chegar Date: 2013-08-15 15:16 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/e7137695dce3 8022126: Remove throws SocketException from DatagramPacket constructors accepting SocketAddress Reviewed-by: smarks, alanb, michaelm, darcy ! src/share/classes/java/net/DatagramPacket.java
hg: jdk8/tl/jdk: 8023104: ConcurrentHashMap typo
Changeset: b07b19182e40 Author:dl Date: 2013-08-15 15:04 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/b07b19182e40 8023104: ConcurrentHashMap typo Reviewed-by: chegar, mduigou ! src/share/classes/java/util/concurrent/ConcurrentHashMap.java
hg: jdk8/tl/jdk: 8023103: FJ parallelism zero; ...
Changeset: 3223342fb76e Author:dl Date: 2013-08-15 15:01 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/3223342fb76e 8023103: FJ parallelism zero 8020537: java/util/concurrent/forkjoin/ThrowingRunnable.java Reviewed-by: chegar, mduigou, alanb ! src/share/classes/java/util/concurrent/ForkJoinPool.java
hg: jdk8/tl/jdk: 8022584: Memory leak in some NetworkInterface methods
Changeset: 7d7d553a8c61 Author:igerasim Date: 2013-08-13 13:04 +0400 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/7d7d553a8c61 8022584: Memory leak in some NetworkInterface methods Reviewed-by: alanb, dholmes, chegar, michaelm ! src/solaris/native/java/net/NetworkInterface.c + test/java/net/NetworkInterface/MemLeakTest.java
hg: jdk8/tl/jdk: 8015765: TEST_BUG: java/nio/channels/ServerSocketChannel/AdaptServerSocket.java failing intermittently
Changeset: b7b0beef5ded Author:alanb Date: 2013-08-15 13:42 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/b7b0beef5ded 8015765: TEST_BUG: java/nio/channels/ServerSocketChannel/AdaptServerSocket.java failing intermittently Reviewed-by: chegar, dholmes, alanb Contributed-by: yiming.w...@oracle.com ! test/java/nio/channels/ServerSocketChannel/AdaptServerSocket.java
hg: jdk8/tl/jdk: 8022921: Remove experimental Profile attribute
Changeset: 5ff3b55df2d4 Author:alanb Date: 2013-08-15 11:54 +0100 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/5ff3b55df2d4 8022921: Remove experimental Profile attribute Reviewed-by: mchung, chegar ! src/share/classes/java/net/URLClassLoader.java ! src/share/classes/java/util/jar/Attributes.java ! src/share/classes/java/util/jar/JarFile.java ! src/share/classes/java/util/jar/JavaUtilJarAccessImpl.java - src/share/classes/java/util/jar/UnsupportedProfileException.java ! src/share/classes/sun/launcher/LauncherHelper.java ! src/share/classes/sun/launcher/resources/launcher.properties ! src/share/classes/sun/misc/JavaUtilJarAccess.java ! src/share/classes/sun/misc/URLClassPath.java ! src/share/classes/sun/misc/Version.java.template ! src/share/classes/sun/tools/jar/Main.java ! src/share/classes/sun/tools/jar/resources/jar.properties - test/java/net/URLClassLoader/profiles/Basic.java - test/java/net/URLClassLoader/profiles/Lib.java - test/java/net/URLClassLoader/profiles/basic.sh - test/tools/jar/AddAndUpdateProfile.java - test/tools/launcher/profiles/Basic.java - test/tools/launcher/profiles/Logging.java - test/tools/launcher/profiles/Main.java - test/tools/launcher/profiles/VersionCheck.java
Re: RFR 8023090: Additional debug info for java/net/NetworkInterface/Equals.java
On 15/08/2013 10:46, Chris Hegarty wrote: Another NetworkInterface test failed for an unexplainable reason, and is not readily reproducible on the same machine. Similar to IndexTest.java I would like to add some additional diagnostic information so we can try to determine the cause of the failure, if seen again. Additionaly, this test captures all the network interface configuration and displays it, along with the failure, only if the test fails. There are no functional changes to the test itself. Looks okay, I've often wondered if wifi interfaces on a test machines might contribute to problems with these tests. -Alan.
RFR 8023090: Additional debug info for java/net/NetworkInterface/Equals.java
Another NetworkInterface test failed for an unexplainable reason, and is not readily reproducible on the same machine. Similar to IndexTest.java I would like to add some additional diagnostic information so we can try to determine the cause of the failure, if seen again. Additionaly, this test captures all the network interface configuration and displays it, along with the failure, only if the test fails. There are no functional changes to the test itself. diff -r bca19fdd875a test/java/net/NetworkInterface/Equals.java --- a/test/java/net/NetworkInterface/Equals.javaTue Aug 13 13:04:21 2013 +0400 +++ b/test/java/net/NetworkInterface/Equals.javaThu Aug 15 10:38:17 2013 +0100 @@ -25,41 +25,82 @@ * @bug 7003398 * @run main/othervm Equals */ + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.net.InetAddress; import java.net.NetworkInterface; -import java.net.InetAddress; +import java.net.SocketException; +import java.util.Arrays; +import java.util.Collections; import java.util.Enumeration; import java.util.HashMap; public class Equals { public static void main(String args[]) throws Exception { +ByteArrayOutputStream baos = new ByteArrayOutputStream(); +PrintStream bufferedOut = new PrintStream(baos); -Enumeration nifs1 = NetworkInterface.getNetworkInterfaces(); +Enumeration nifs1 = NetworkInterface.getNetworkInterfaces(); HashMap hashes = new HashMap<>(); HashMap nicMap = new HashMap<>(); while (nifs1.hasMoreElements()) { -NetworkInterface ni = (NetworkInterface)nifs1.nextElement(); +NetworkInterface ni = nifs1.nextElement(); hashes.put(ni.getName(),ni.hashCode()); nicMap.put(ni.getName(),ni); +displayInterfaceInformation(ni, bufferedOut); +bufferedOut.flush(); } System.setSecurityManager(new SecurityManager()); -Enumeration nifs2 = NetworkInterface.getNetworkInterfaces(); +Enumeration nifs2 = NetworkInterface.getNetworkInterfaces(); while (nifs2.hasMoreElements()) { -NetworkInterface ni = (NetworkInterface)nifs2.nextElement(); +NetworkInterface ni = nifs2.nextElement(); NetworkInterface niOrig = nicMap.get(ni.getName()); -int h = hashes.get(ni.getName()); -if (h != ni.hashCode()) { +int h = ni.hashCode(); +if (h == hashes.get(ni.getName())) { +System.out.printf("%nSystem information:%n"); +System.out.printf("%s", baos.toString("UTF8")); +System.out.printf("%nni.hashCode() returned %d, expected %d, for:%n", + h, hashes.get(ni.getName())); +displayInterfaceInformation(ni,System.out); throw new RuntimeException ("Hashcodes different for " + ni.getName()); } if (!ni.equals(niOrig)) { +System.out.printf("%nSystem information:%n"); +System.out.printf("%s", baos.toString("UTF8")); +System.out.printf("%nExpected the following interfaces to be the same:%n"); +displayInterfaceInformation(niOrig, System.out); +displayInterfaceInformation(ni,System.out); throw new RuntimeException ("equality different for " + ni.getName()); } } } + +static void displayInterfaceInformation(NetworkInterface netint, +PrintStream out) throws SocketException { +out.printf("Display name: %s%n", netint.getDisplayName()); +out.printf("Name: %s%n", netint.getName()); +Enumeration inetAddresses = netint.getInetAddresses(); + +for (InetAddress inetAddress : Collections.list(inetAddresses)) +out.printf("InetAddress: %s%n", inetAddress); + +out.printf("Up? %s%n", netint.isUp()); +out.printf("Loopback? %s%n", netint.isLoopback()); +out.printf("PointToPoint? %s%n", netint.isPointToPoint()); +out.printf("Supports multicast? %s%n", netint.supportsMulticast()); +out.printf("Virtual? %s%n", netint.isVirtual()); +out.printf("Hardware address: %s%n", +Arrays.toString(netint.getHardwareAddress())); +out.printf("MTU: %s%n", netint.getMTU()); +out.printf("Index: %s%n", netint.getIndex()); +out.printf("%n"); + } } -Chris.