1 #ifndef _IPHLPAPI_H 2 #define _IPHLPAPI_H 3 4 #ifdef __cplusplus 5 extern "C" { 6 #endif 7 8 #include <iprtrmib.h> 9 #include <ipexport.h> 10 #include <iptypes.h> 11 12 DWORD WINAPI AddIPAddress(IPAddr,IPMask,DWORD,PULONG,PULONG); 13 DWORD WINAPI CreateIpForwardEntry(PMIB_IPFORWARDROW); 14 DWORD WINAPI CreateIpNetEntry(PMIB_IPNETROW); 15 DWORD WINAPI CreateProxyArpEntry(DWORD,DWORD,DWORD); 16 DWORD WINAPI DeleteIPAddress(ULONG); 17 DWORD WINAPI DeleteIpForwardEntry(PMIB_IPFORWARDROW); 18 DWORD WINAPI DeleteIpNetEntry(PMIB_IPNETROW); 19 DWORD WINAPI DeleteProxyArpEntry(DWORD,DWORD,DWORD); 20 DWORD WINAPI EnableRouter(HANDLE*,OVERLAPPED*); 21 DWORD WINAPI FlushIpNetTable(DWORD); 22 DWORD WINAPI GetAdapterIndex(LPWSTR,PULONG); 23 #ifdef _WINSOCK2API_ 24 DWORD WINAPI GetAdaptersAddresses(ULONG,ULONG,PVOID,PIP_ADAPTER_ADDRESSES,PULONG); 25 #endif 26 DWORD WINAPI GetAdaptersInfo(PIP_ADAPTER_INFO,PULONG); 27 DWORD WINAPI GetBestInterface(IPAddr,PDWORD); 28 DWORD WINAPI GetBestRoute(DWORD,DWORD,PMIB_IPFORWARDROW); 29 DWORD WINAPI GetExtendedTcpTable(PVOID,PDWORD,BOOL,ULONG,TCP_TABLE_CLASS,ULONG); 30 DWORD WINAPI GetExtendedUdpTable(PVOID,PDWORD,BOOL,ULONG,UDP_TABLE_CLASS,ULONG); 31 DWORD WINAPI GetFriendlyIfIndex(DWORD); 32 DWORD WINAPI GetIcmpStatistics(PMIB_ICMP); 33 DWORD WINAPI GetIfEntry(PMIB_IFROW); 34 DWORD WINAPI GetIfTable(PMIB_IFTABLE,PULONG,BOOL); 35 DWORD WINAPI GetInterfaceInfo(PIP_INTERFACE_INFO,PULONG); 36 DWORD WINAPI GetIpAddrTable(PMIB_IPADDRTABLE,PULONG,BOOL); 37 DWORD WINAPI GetIpForwardTable(PMIB_IPFORWARDTABLE,PULONG,BOOL); 38 DWORD WINAPI GetIpNetTable(PMIB_IPNETTABLE,PULONG,BOOL); 39 DWORD WINAPI GetIpStatistics(PMIB_IPSTATS); 40 DWORD WINAPI GetIpStatisticsEx(PMIB_IPSTATS,DWORD); 41 DWORD WINAPI GetNetworkParams(PFIXED_INFO,PULONG); 42 DWORD WINAPI GetNumberOfInterfaces(PDWORD); 43 DWORD WINAPI GetOwnerModuleFromTcpEntry(PMIB_TCPROW_OWNER_MODULE,TCPIP_OWNER_MODULE_INFO_CLASS,PVOID,PDWORD); 44 DWORD WINAPI GetOwnerModuleFromUdpEntry(PMIB_UDPROW_OWNER_MODULE,TCPIP_OWNER_MODULE_INFO_CLASS,PVOID,PDWORD); 45 DWORD WINAPI GetPerAdapterInfo(ULONG,PIP_PER_ADAPTER_INFO, PULONG); 46 BOOL WINAPI GetRTTAndHopCount(IPAddr,PULONG,ULONG,PULONG); 47 DWORD WINAPI GetTcpStatistics(PMIB_TCPSTATS); 48 DWORD WINAPI GetTcpTable(PMIB_TCPTABLE,PDWORD,BOOL); 49 DWORD WINAPI GetUniDirectionalAdapterInfo(PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS,PULONG); 50 DWORD WINAPI GetUdpStatistics(PMIB_UDPSTATS); 51 DWORD WINAPI GetUdpTable(PMIB_UDPTABLE,PDWORD,BOOL); 52 DWORD WINAPI IpReleaseAddress(PIP_ADAPTER_INDEX_MAP); 53 DWORD WINAPI IpRenewAddress(PIP_ADAPTER_INDEX_MAP); 54 DWORD WINAPI NotifyAddrChange(PHANDLE,LPOVERLAPPED); 55 DWORD WINAPI NotifyRouteChange(PHANDLE,LPOVERLAPPED); 56 DWORD WINAPI SendARP(IPAddr,IPAddr,PULONG,PULONG); 57 DWORD WINAPI SetIfEntry(PMIB_IFROW); 58 DWORD WINAPI SetIpForwardEntry(PMIB_IPFORWARDROW); 59 DWORD WINAPI SetIpNetEntry(PMIB_IPNETROW); 60 DWORD WINAPI SetIpStatistics(PMIB_IPSTATS); 61 DWORD WINAPI SetIpTTL(UINT); 62 DWORD WINAPI SetTcpEntry(PMIB_TCPROW); 63 DWORD WINAPI UnenableRouter(OVERLAPPED*, LPDWORD); 64 65 #if (NTDDI_VERSION < NTDDI_VISTA) 66 DWORD WINAPI AllocateAndGetTcpExTableFromStack(PVOID*,BOOL,HANDLE,DWORD,DWORD); 67 DWORD WINAPI AllocateAndGetTcpExTable2FromStack(PVOID*,BOOL,HANDLE,DWORD,DWORD,TCP_TABLE_CLASS); 68 DWORD WINAPI AllocateAndGetUdpExTableFromStack(PVOID*,BOOL,HANDLE,DWORD,DWORD); 69 DWORD WINAPI AllocateAndGetUdpExTable2FromStack(PVOID*,BOOL,HANDLE,DWORD,DWORD,UDP_TABLE_CLASS); 70 #endif 71 72 #if (NTDDI_VERSION >= NTDDI_VISTA) 73 #include <netioapi.h> 74 #endif 75 76 #ifdef __cplusplus 77 } 78 #endif 79 80 #endif /* _IPHLPAPI_H */ 81