This looks mainly good to me. Just a few small comments (mainly on the use of reflection):
1) jdk/net/Sockets.java You could use a SharedSecret to access the private methods in the public java.net package, but reflection is ok too. 2) If you stick with reflection then if a lookup of any of the methods fails, throws ReflectiveOperationException, then you should probably throw InternalError as there is something badly wrong. 3) Would it make sense for the invoker static methods of jdk.net.Sockets to throw UncheckedIOException(e) ?? -Chris. On 10/04/14 18:13, Michael McMahon wrote:
Hi, This is the webrev for the 8u20 version of the fix that was reviewed yesterday for 9. JDK === http://cr.openjdk.java.net/~michaelm/8036979.8u20/jdk/01/webrev/ Top repo ===== http://cr.openjdk.java.net/~michaelm/8036979.8u20/top/01/webrev/ The good news is that the change is almost the same as the JDK 9 version with the following differences: 1) The java.net public API changes are gone. The new public methods for 9 in SocketImpl and DatagramSocketImpl are package private here. 2) A new package private class java.net.SocketsUtil acts as a bridge between the public API in jdk.net.Sockets and the implementation in java.net 3) jdk.net.Sockets uses reflection to access the methods of java.net.SocketsUtil 4) The test of the public java.net API is gone and the other test augmented with some additional tests for the standard socket options Thanks, Michael