Ken Thomases : iphlpapi:
Fixed a problem with enumerating network interfaces.
Alexandre Julliard
julliard at wine.codeweavers.com
Thu Dec 21 10:36:39 CST 2006
Module: wine
Branch: master
Commit: 6b033cc1e61a1ac50753b52c1b267f34a3a7ee54
URL: http://source.winehq.org/git/wine.git/?a=commit;h=6b033cc1e61a1ac50753b52c1b267f34a3a7ee54
Author: Ken Thomases <ken at codeweavers.com>
Date: Thu Dec 21 14:47:20 2006 +0100
iphlpapi: Fixed a problem with enumerating network interfaces.
Keep increasing the buffer until the returned length is more than two
records smaller than the buffer we provided.
---
dlls/iphlpapi/ifenum.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/dlls/iphlpapi/ifenum.c b/dlls/iphlpapi/ifenum.c
index 52e8413..fb3348f 100644
--- a/dlls/iphlpapi/ifenum.c
+++ b/dlls/iphlpapi/ifenum.c
@@ -690,7 +690,7 @@ static DWORD enumIPAddresses(PDWORD pcAd
ifc->ifc_buf = HeapAlloc(GetProcessHeap(), 0, ifc->ifc_len);
ioctlRet = ioctl(fd, SIOCGIFCONF, ifc);
} while (ioctlRet == 0 &&
- ifc->ifc_len == (sizeof(struct ifreq) * guessedNumAddresses));
+ ifc->ifc_len > (sizeof(struct ifreq) * (guessedNumAddresses - 2)));
if (ioctlRet == 0) {
ifPtr = ifc->ifc_buf;
More information about the wine-cvs
mailing list