iphlpapi: Set 0.0.0.0 as the IP and mask of disconnected interfaces.
This commit is contained in:
parent
aa808571e6
commit
317fd11e85
|
@ -604,6 +604,12 @@ DWORD WINAPI GetAdaptersInfo(PIP_ADAPTER_INFO pAdapterInfo, PULONG pOutBufLen)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/* If no IP was found it probably means that the interface is not
|
||||||
|
* configured. In this case we have to return a zeroed IP and mask. */
|
||||||
|
if (firstIPAddr) {
|
||||||
|
strcpy(ptr->IpAddressList.IpAddress.String, "0.0.0.0");
|
||||||
|
strcpy(ptr->IpAddressList.IpMask.String, "0.0.0.0");
|
||||||
|
}
|
||||||
/* Find first router through this interface, which we'll assume
|
/* Find first router through this interface, which we'll assume
|
||||||
* is the default gateway for this adapter */
|
* is the default gateway for this adapter */
|
||||||
for (i = 0; i < routeTable->dwNumEntries; i++)
|
for (i = 0; i < routeTable->dwNumEntries; i++)
|
||||||
|
|
|
@ -1118,12 +1118,20 @@ static void testGetAdaptersInfo(void)
|
||||||
if (apiReturn == ERROR_NO_DATA)
|
if (apiReturn == ERROR_NO_DATA)
|
||||||
; /* no adapter's, that's okay */
|
; /* no adapter's, that's okay */
|
||||||
else if (apiReturn == ERROR_BUFFER_OVERFLOW) {
|
else if (apiReturn == ERROR_BUFFER_OVERFLOW) {
|
||||||
PIP_ADAPTER_INFO buf = HeapAlloc(GetProcessHeap(), 0, len);
|
PIP_ADAPTER_INFO ptr, buf = HeapAlloc(GetProcessHeap(), 0, len);
|
||||||
|
|
||||||
apiReturn = pGetAdaptersInfo(buf, &len);
|
apiReturn = pGetAdaptersInfo(buf, &len);
|
||||||
ok(apiReturn == NO_ERROR,
|
ok(apiReturn == NO_ERROR,
|
||||||
"GetAdaptersInfo(buf, &dwSize) returned %d, expected NO_ERROR\n",
|
"GetAdaptersInfo(buf, &dwSize) returned %d, expected NO_ERROR\n",
|
||||||
apiReturn);
|
apiReturn);
|
||||||
|
ptr = buf;
|
||||||
|
while (ptr) {
|
||||||
|
ok(ptr->IpAddressList.IpAddress.String[0], "A valid IP must be present\n");
|
||||||
|
ok(ptr->IpAddressList.IpMask.String[0], "A valid mask must be present\n");
|
||||||
|
trace("Adapter '%s', IP %s, Mask %s\n", ptr->AdapterName,
|
||||||
|
ptr->IpAddressList.IpAddress.String, ptr->IpAddressList.IpMask.String);
|
||||||
|
ptr = ptr->Next;
|
||||||
|
}
|
||||||
HeapFree(GetProcessHeap(), 0, buf);
|
HeapFree(GetProcessHeap(), 0, buf);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue