diff -r 74aeb4741e3d -r 22f8c33b0690 jdk/src/share/classes/sun/nio/ch/SocketAdaptor.java --- a/jdk/src/share/classes/sun/nio/ch/SocketAdaptor.java Thu Mar 28 06:55:42 2013 -0400 +++ b/jdk/src/share/classes/sun/nio/ch/SocketAdaptor.java Thu Mar 28 14:34:18 2013 -0700 @@ -149,9 +149,10 @@ public InetAddress getLocalAddress() { if (sc.isOpen()) { - SocketAddress local = sc.localAddress(); - if (local != null) - return ((InetSocketAddress)local).getAddress(); + InetSocketAddress local = sc.localAddress(); + if (local != null) { + return Net.getRevealedLocalAddress(local).getAddress(); + } } return new InetSocketAddress(0).getAddress(); }