235 lines
4.1 KiB
C
235 lines
4.1 KiB
C
/*++
|
|
|
|
Copyright (c) 1997 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
public\sdk\inc\iphlpapi.h
|
|
|
|
Abstract:
|
|
Some private APIs. These are used by multimedia streaming code and
|
|
MIB-II subagent. From the days this was mib2util.dll
|
|
|
|
Revision History:
|
|
Amritansh Raghav Created
|
|
|
|
|
|
--*/
|
|
|
|
#ifndef __IPHLPINT_H__
|
|
#define __IPHLPINT_H__
|
|
|
|
#include <iprtrmib.h>
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
// //
|
|
// The InternalGetXXXTable APIs take a pointer to a pointer to a buffer, //
|
|
// a heap from which to allocate from, and flags used for allocation. The //
|
|
// APIs allocate a buffer for the user. If NO_ERROR is returned, the //
|
|
// the returned buffer is valid (even if it has no entries) and it is the //
|
|
// callers duty to free the memory. This is different from the external //
|
|
// APIs in that those return ERROR_NO_DATA if there are no entries //
|
|
// //
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
DWORD
|
|
InternalGetIfTable(
|
|
OUT MIB_IFTABLE **ppIfTable,
|
|
IN HANDLE hHeap,
|
|
IN DWORD dwAllocFlags
|
|
);
|
|
|
|
DWORD
|
|
InternalGetIpAddrTable(
|
|
OUT MIB_IPADDRTABLE **ppIpAddrTable,
|
|
IN HANDLE hHeap,
|
|
IN DWORD dwAllocFlags
|
|
);
|
|
|
|
DWORD
|
|
InternalGetIpNetTable(
|
|
OUT MIB_IPNETTABLE **ppIpNetTable,
|
|
IN HANDLE hHeap,
|
|
IN DWORD dwAllocFlags
|
|
);
|
|
|
|
DWORD
|
|
InternalGetIpForwardTable(
|
|
OUT MIB_IPFORWARDTABLE **ppIpForwardTable,
|
|
IN HANDLE hHeap,
|
|
IN DWORD dwAllocFlags
|
|
);
|
|
|
|
DWORD
|
|
InternalGetTcpTable(
|
|
OUT MIB_TCPTABLE **ppTcpTable,
|
|
IN HANDLE hHeap,
|
|
IN DWORD dwAllocFlags
|
|
);
|
|
|
|
DWORD
|
|
InternalGetUdpTable(
|
|
OUT MIB_UDPTABLE **ppUdpTable,
|
|
IN HANDLE hHeap,
|
|
IN DWORD dwAllocFlags
|
|
);
|
|
|
|
DWORD
|
|
InternalSetIfEntry(
|
|
IN PMIB_OPAQUE_INFO pInfoRow
|
|
);
|
|
|
|
DWORD
|
|
InternalCreateIpForwardEntry(
|
|
IN PMIB_OPAQUE_INFO pInfoRow
|
|
);
|
|
|
|
DWORD
|
|
InternalSetIpForwardEntry(
|
|
IN PMIB_OPAQUE_INFO pInfoRow
|
|
);
|
|
|
|
DWORD
|
|
InternalDeleteIpForwardEntry(
|
|
IN PMIB_OPAQUE_INFO pInfoRow
|
|
);
|
|
|
|
DWORD
|
|
InternalSetIpStats(
|
|
IN PMIB_OPAQUE_INFO pInfoRow
|
|
);
|
|
|
|
DWORD
|
|
InternalCreateIpNetEntry(
|
|
IN PMIB_OPAQUE_INFO pInfoRow
|
|
);
|
|
|
|
DWORD
|
|
InternalSetIpNetEntry(
|
|
PMIB_OPAQUE_INFO pInfoRow
|
|
);
|
|
|
|
DWORD
|
|
InternalDeleteIpNetEntry(
|
|
PMIB_OPAQUE_INFO pInfoRow
|
|
);
|
|
|
|
DWORD
|
|
InternalSetTcpEntry(
|
|
PMIB_OPAQUE_INFO pInfoRow
|
|
);
|
|
|
|
DWORD
|
|
OpenAdapterKey(
|
|
LPSTR Name,
|
|
PHKEY Key
|
|
);
|
|
|
|
DWORD
|
|
ReadRegistryDword(
|
|
HKEY Key,
|
|
LPSTR ParameterName,
|
|
PULONG Value
|
|
);
|
|
|
|
DWORD
|
|
GetAdapterIPInterfaceContext(
|
|
IN LPSTR AdapterName,
|
|
OUT PULONG Context
|
|
);
|
|
|
|
DWORD
|
|
GetAdapterIndex(
|
|
IN LPWSTR AdapterName,
|
|
OUT PULONG IfIndex
|
|
);
|
|
|
|
DWORD
|
|
AddIPAddress(
|
|
IPAddr Address,
|
|
IPMask IpMask,
|
|
ULONG IfIndex,
|
|
PULONG NTEContext,
|
|
PULONG NTEInstance
|
|
);
|
|
|
|
DWORD
|
|
DeleteIPAddress(
|
|
ULONG NTEContext
|
|
);
|
|
|
|
BOOL
|
|
GetRTT(
|
|
IPAddr DestIpAddress,
|
|
PULONG Rtt
|
|
);
|
|
|
|
BOOLEAN
|
|
GetHopCounts(
|
|
IPAddr DestIpAddress,
|
|
PULONG HopCount,
|
|
ULONG MaxHops
|
|
);
|
|
|
|
|
|
BOOL
|
|
GetRTTAndHopCount(
|
|
IPAddr DestIpAddress,
|
|
PULONG HopCount,
|
|
ULONG MaxHops,
|
|
PULONG RTT
|
|
);
|
|
|
|
DWORD
|
|
GetInterfaceInfo(OUT PIP_INTERFACE_INFO pIPIfInfo,
|
|
OUT PULONG dwOutBufLen
|
|
);
|
|
|
|
|
|
|
|
DWORD
|
|
IsLocalAddress(
|
|
IPAddr InAddress
|
|
);
|
|
|
|
DWORD
|
|
AddArpEntry(
|
|
IPAddr IPAddress,
|
|
PUCHAR pPhyAddress,
|
|
ULONG PhyAddrLen,
|
|
ULONG IfIndex,
|
|
BOOLEAN Dynamic
|
|
|
|
);
|
|
|
|
DWORD
|
|
DeleteArpEntry(
|
|
IPAddr IPAddress,
|
|
ULONG IfIndex
|
|
);
|
|
|
|
DWORD
|
|
NotifyAddrChange(
|
|
HANDLE *pHandle,
|
|
OVERLAPPED *pOverlapped
|
|
);
|
|
|
|
DWORD
|
|
NotifyRouteChange(
|
|
HANDLE *pHandle,
|
|
OVERLAPPED *pOverlapped
|
|
);
|
|
|
|
DWORD
|
|
DhcpReleaseParameters(
|
|
LPWSTR AdapterName
|
|
);
|
|
|
|
DWORD
|
|
DhcpRenewAddress(
|
|
LPWSTR AdapterName
|
|
);
|
|
|
|
#endif // __IPHLPINT_H__
|