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