[PATCH 2/6] iphlpapi: Don't enumerate loopback interfaces in GetInterfaceInfo().

Huw Davies huw at codeweavers.com
Thu Aug 19 02:53:42 CDT 2021


Signed-off-by: Huw Davies <huw at codeweavers.com>
---
 dlls/iphlpapi/iphlpapi_main.c  | 2 ++
 dlls/iphlpapi/tests/iphlpapi.c | 1 -
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/dlls/iphlpapi/iphlpapi_main.c b/dlls/iphlpapi/iphlpapi_main.c
index 494df48752b..ab72f766e97 100644
--- a/dlls/iphlpapi/iphlpapi_main.c
+++ b/dlls/iphlpapi/iphlpapi_main.c
@@ -1936,6 +1936,7 @@ DWORD WINAPI GetInterfaceInfo( IP_INTERFACE_INFO *table, ULONG *size )
 
     for (i = 0; i < count; i++)
     {
+        if (stat[i].type == IF_TYPE_SOFTWARE_LOOPBACK) continue;
         num++;
     }
 
@@ -1952,6 +1953,7 @@ DWORD WINAPI GetInterfaceInfo( IP_INTERFACE_INFO *table, ULONG *size )
     {
         IP_ADAPTER_INDEX_MAP *row;
 
+        if (stat[i].type == IF_TYPE_SOFTWARE_LOOPBACK) continue;
         row = table->Adapter + num++;
         row->Index = stat[i].if_index;
         memcpy( row->Name, device_tcpip, sizeof(device_tcpip) );
diff --git a/dlls/iphlpapi/tests/iphlpapi.c b/dlls/iphlpapi/tests/iphlpapi.c
index 5ec2f2eaba2..d1881616d30 100644
--- a/dlls/iphlpapi/tests/iphlpapi.c
+++ b/dlls/iphlpapi/tests/iphlpapi.c
@@ -1109,7 +1109,6 @@ static void testGetInterfaceInfo(void)
             GetIfEntry( &row );
             ok( !wcscmp( buf->Adapter[i].Name, row.wszName ), "got %s vs %s\n",
                 debugstr_w( buf->Adapter[i].Name ), debugstr_w( row.wszName ) );
-todo_wine_if( row.dwType == IF_TYPE_SOFTWARE_LOOPBACK)
             ok( row.dwType != IF_TYPE_SOFTWARE_LOOPBACK, "got loopback\n" );
         }
         HeapFree(GetProcessHeap(), 0, buf);
-- 
2.23.0




More information about the wine-devel mailing list