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