(svn r15938) -Fix: broadcast addresses detection was broken for win32

This commit is contained in:
glx 2009-04-03 16:22:34 +00:00
parent e05e1822d6
commit 2dafb9dd57
1 changed files with 2 additions and 0 deletions

View File

@ -137,8 +137,10 @@ static int NetworkFindBroadcastIPsInternal(NetworkAddress *broadcast, int limit)
sockaddr_storage address;
memset(&address, 0, sizeof(address));
/* iiBroadcast is unusable, because it always seems to be set to 255.255.255.255. */
memcpy(&address, &ifo[j].iiAddress.Address, sizeof(sockaddr));
((sockaddr_in*)&address)->sin_addr.s_addr = ifo[j].iiAddress.AddressIn.sin_addr.s_addr | ~ifo[j].iiNetmask.AddressIn.sin_addr.s_addr;
broadcast[index] = NetworkAddress(address, sizeof(sockaddr));
index++;
}
closesocket(sock);