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