Sync with trunk (r48545)
[reactos.git] / dll / win32 / iphlpapi / iphlpapi_private.h
index 4210198..2cb747f 100644 (file)
@@ -19,8 +19,6 @@
 # include <resolv.h>
 #endif
 
-#undef _WIN32_WINNT
-#define _WIN32_WINNT 0x500
 #define WIN32_NO_STATUS
 #include <winsock2.h>
 #include <ws2tcpip.h>
 #include "wine/debug.h"
 
 //#include "ntddndis.h"
-#include "ddk/tdiinfo.h"
+#include "tdiinfo.h"
 #include "tcpioctl.h"
 
+#include "tdilib.h"
+
 #ifndef ETH_ALEN
 #define ETH_ALEN 6
 #endif
 #define TCP_REQUEST_QUERY_INFORMATION_INIT { { { 0 } } }
 #define TCP_REQUEST_SET_INFORMATION_INIT { { 0 } }
 
+/* FIXME: ROS headers suck */
+#ifndef GAA_FLAG_SKIP_UNICAST
+#define GAA_FLAG_SKIP_UNICAST      0x0001
+#endif
+
+#ifndef GAA_FLAG_SKIP_FRIENDLY_NAME
+#define GAA_FLAG_SKIP_FRIENDLY_NAME 0x0020
+#endif
+
 // As in the mib from RFC 1213
 
 typedef struct _IPRouteEntry {
@@ -120,20 +129,9 @@ typedef enum _IPHLPAddrType {
 } IPHLPAddrType;
 
 /** Prototypes **/
-NTSTATUS openTcpFile(PHANDLE tcpFile);
-VOID closeTcpFile(HANDLE tcpFile);
-NTSTATUS tdiGetEntityIDSet( HANDLE tcpFile, TDIEntityID **entitySet,
-                           PDWORD numEntities );
-NTSTATUS tdiGetSetOfThings( HANDLE tcpFile, DWORD toiClass, DWORD toiType,
-                           DWORD toiId, DWORD teiEntity, DWORD teiInstance,
-                           DWORD fixedPart,
-                           DWORD entrySize, PVOID *tdiEntitySet,
-                           PDWORD numEntries );
-VOID tdiFreeThingSet( PVOID things );
 NTSTATUS getNthIpEntity( HANDLE tcpFile, DWORD index, TDIEntityID *ent );
 NTSTATUS tdiGetIpAddrsForIpEntity( HANDLE tcpFile, TDIEntityID *ent,
                                   IPAddrEntry **addrs, PDWORD numAddrs );
-
 int GetLongestChildKeyName( HANDLE RegHandle );
 LONG OpenChildKeyRead( HANDLE RegHandle,
                       PWCHAR ChildKeyName,
@@ -149,6 +147,10 @@ typedef VOID (*EnumNameServersFunc)( PWCHAR Interface,
                                     PWCHAR NameServer,
                                     PVOID Data );
 void EnumNameServers( HANDLE RegHandle, PWCHAR Interface, PVOID Data, EnumNameServersFunc cb );
+NTSTATUS getIPAddrEntryForIf(HANDLE tcpFile,
+                             char *name,
+                             DWORD index,
+                             IFInfo *ifInfo);
 
 #include <w32api.h>
 /* This is here until we switch to version 2.5 of the mingw headers */