hg: jdk8/tl/jdk: 8017109: Cleanup overrides warning in src/solaris/classes/sun/print/AttributeClass.java

2013-08-15 Thread dan . xu
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)

2013-08-15 Thread dan . xu
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

2013-08-15 Thread vincent . x . ryan
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

2013-08-15 Thread Matthew Hall
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

2013-08-15 Thread Xuelei Fan
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

2013-08-15 Thread xueming . shen
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

2013-08-15 Thread Mike Duigou
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

2013-08-15 Thread chris . hegarty
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

2013-08-15 Thread chris . hegarty
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; ...

2013-08-15 Thread chris . hegarty
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

2013-08-15 Thread chris . hegarty
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

2013-08-15 Thread alan . bateman
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

2013-08-15 Thread alan . bateman
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

2013-08-15 Thread Alan Bateman

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

2013-08-15 Thread Chris Hegarty
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.