Request for Review 6718504: IN6_IS_ADDR_ANY tests only 12 bytes of 16-byte address

2010-04-26 Thread Chris Hegarty

Hi Alan,

net_util_md.h incorrectly defines the macro IN6_IS_ADDR_ANY to only look 
at 12 bytes of the 16 byte address. This causes a bind to ::1 to be 
treated as if it were a bind to the wildcard address.


Note: with the addition of the dual stack native implementation on Vista 
this code is only executed when running IPv6 on Windows XP.


Webrev:
  http://cr.openjdk.java.net/~chegar/6718504/webrev.00/webrev/

-Chris.


Re: Request for Review 6718504: IN6_IS_ADDR_ANY tests only 12 bytes of 16-byte address

2010-04-26 Thread Alan Bateman

Chris Hegarty wrote:

Hi Alan,

net_util_md.h incorrectly defines the macro IN6_IS_ADDR_ANY to only 
look at 12 bytes of the 16 byte address. This causes a bind to ::1 to 
be treated as if it were a bind to the wildcard address.


Note: with the addition of the dual stack native implementation on 
Vista this code is only executed when running IPv6 on Windows XP.


Webrev:
  http://cr.openjdk.java.net/~chegar/6718504/webrev.00/webrev/

-Chris.
The change looks fine to me. In the test it might be simpler to put the 
lookup of the IPv6 loopback address in the main method. Also, you can 
probably call getLocalAddress.


-Alan.


Re: Request for Review 6718504: IN6_IS_ADDR_ANY tests only 12 bytes of 16-byte address

2010-04-26 Thread Chris Hegarty

On 26/04/2010 14:37, Alan Bateman wrote:

Chris Hegarty wrote:

Hi Alan,

net_util_md.h incorrectly defines the macro IN6_IS_ADDR_ANY to only
look at 12 bytes of the 16 byte address. This causes a bind to ::1 to
be treated as if it were a bind to the wildcard address.

Note: with the addition of the dual stack native implementation on
Vista this code is only executed when running IPv6 on Windows XP.

Webrev:
http://cr.openjdk.java.net/~chegar/6718504/webrev.00/webrev/

-Chris.

The change looks fine to me. In the test it might be simpler to put the
lookup of the IPv6 loopback address in the main method. Also, you can
probably call getLocalAddress.


Thanks Alan, I've make the changes and simplified the test.

-Chris.



-Alan.


Re: Request for Review 6718504: IN6_IS_ADDR_ANY tests only 12 bytes of 16-byte address

2010-04-26 Thread Alan Bateman

Chris Hegarty wrote:

:
Thanks Alan, I've make the changes and simplified the test.
I looked at the updated version. The try/catch around the loopback 
address lookup doesn't seem to be needed. Also, no need to catch the 
IOException in the main part of the test either. Otherwise looks fine to me.


-Alan.