From 9b626f512037a8ca615b0ef4d210096df11d3663 Mon Sep 17 00:00:00 2001 From: Alex Henrie Date: Thu, 28 Jun 2018 13:54:45 +0200 Subject: [PATCH] iphlpapi: Cast caddr_t to char* before doing pointer arithmetic. Signed-off-by: Alex Henrie Signed-off-by: Alexandre Julliard --- dlls/iphlpapi/ifenum.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dlls/iphlpapi/ifenum.c b/dlls/iphlpapi/ifenum.c index eed1be15d19..c3abdf0e536 100644 --- a/dlls/iphlpapi/ifenum.c +++ b/dlls/iphlpapi/ifenum.c @@ -1013,13 +1013,13 @@ static DWORD enumIPAddresses(PDWORD pcAddresses, struct ifconf *ifc) if (ioctlRet == 0) { ifPtr = ifc->ifc_buf; - while (ifPtr && ifPtr < ifc->ifc_buf + ifc->ifc_len) { + while (ifPtr && (char *)ifPtr < ifc->ifc_buf + ifc->ifc_len) { struct ifreq *ifr = (struct ifreq *)ifPtr; if (ifr->ifr_addr.sa_family == AF_INET) numAddresses++; - ifPtr += ifreq_len((struct ifreq *)ifPtr); + ifPtr = (char *)ifPtr + ifreq_len((struct ifreq *)ifPtr); } } else @@ -1074,10 +1074,10 @@ DWORD getIPAddrTable(PMIB_IPADDRTABLE *ppIpAddrTable, HANDLE heap, DWORD flags) ret = NO_ERROR; (*ppIpAddrTable)->dwNumEntries = numAddresses; ifPtr = ifc.ifc_buf; - while (!ret && ifPtr && ifPtr < ifc.ifc_buf + ifc.ifc_len) { + while (!ret && ifPtr && (char *)ifPtr < ifc.ifc_buf + ifc.ifc_len) { struct ifreq *ifr = (struct ifreq *)ifPtr; - ifPtr += ifreq_len(ifr); + ifPtr = (char *)ifPtr + ifreq_len(ifr); if (ifr->ifr_addr.sa_family != AF_INET) continue;