[PATCH 4/5] iphlpapi: Implement if_indextoname() using the ConvertInterface* functions.

Huw Davies huw at codeweavers.com
Fri Jul 2 03:41:35 CDT 2021


Signed-off-by: Huw Davies <huw at codeweavers.com>
---
 dlls/iphlpapi/iphlpapi_main.c | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/dlls/iphlpapi/iphlpapi_main.c b/dlls/iphlpapi/iphlpapi_main.c
index aaa6a80c19e..8540b594e53 100644
--- a/dlls/iphlpapi/iphlpapi_main.c
+++ b/dlls/iphlpapi/iphlpapi_main.c
@@ -3374,11 +3374,19 @@ IF_INDEX WINAPI IPHLP_if_nametoindex(const char *name)
 /******************************************************************
  *    if_indextoname (IPHLPAPI.@)
  */
-PCHAR WINAPI IPHLP_if_indextoname(NET_IFINDEX index, PCHAR name)
+char *WINAPI IPHLP_if_indextoname( NET_IFINDEX index, char *name )
 {
-    TRACE("(%u, %p)\n", index, name);
+    NET_LUID luid;
+    DWORD err;
+
+    TRACE( "(%u, %p)\n", index, name );
+
+    err = ConvertInterfaceIndexToLuid( index, &luid );
+    if (err) return NULL;
 
-    return getInterfaceNameByIndex(index, name);
+    err = ConvertInterfaceLuidToNameA( &luid, name, IF_MAX_STRING_SIZE );
+    if (err) return NULL;
+    return name;
 }
 
 /******************************************************************
-- 
2.23.0




More information about the wine-devel mailing list