Looks like some structure size (probably sockaddr) is
wrong for newer versions of windoze.
On my windoze-xp system, getting a list of interfaces
doesn't quite work as expected and only the first
address in the list looks ok, with the netmask and
broadcast address being all zeros.
If I hack the sa_data field of struct sockaddr in
winsock2.h to be
then things work fine.