Difference between revisions of "Unit IPHlpAPI"
Line 1,343: | Line 1,343: | ||
---- | ---- | ||
+ | |||
+ | '''Initialization functions''' | ||
+ | |||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
+ | <pre style="border: 0; padding-bottom:0px;">function IPHelperStart:Boolean;</pre> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Initialize and start the Winsock2 provider</div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | ! '''Note''' | ||
+ | | Only called internally by IP Helper functions | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
+ | <pre style="border: 0; padding-bottom:0px;">function IPHelperStop:Boolean;</pre> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Terminate and stop the Winsock2 provider</div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | ! '''Note''' | ||
+ | | Only called internally by IP Helper functions | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | |||
+ | '''Helper functions''' | ||
+ | |||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | ||
+ | <pre style="border: 0; padding-bottom:0px;">function IPHelperConvertError(Status:Integer):DWORD;</pre> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' Convert a Winsock2 error to an error code</div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | ! '''Note''' | ||
+ | | None documented | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
'''IP helper functions''' | '''IP helper functions''' |
Revision as of 06:22, 27 July 2017
Return to Unit Reference
Contents
[hide]Description
Ultibo IP Helper interface unit
This unit provides a subset of the Windows IP Helper API functions for querying and managing configuration of the TCP/IP transport and associated protocols.
Note: Not all functions are currently implemented, more will be added as they are required.
Constants
MAX_ADAPTER_*
MIB_IF_OPER_STATUS_*
MIB_IF_TYPE_*
MIB_IF_ADMIN_STATUS_*
MIB_TCP_*
MIB_TCP_STATE_*
MIB_USE_CURRENT_*
MIB_IP_*
MIB_IPROUTE_*
MIB_IPPROTO_*
MIB_IPNET_*
Type definitions
IP address
IPAddr = Cardinal;
|
An IP address |
IP mask
IPMask = Cardinal;
|
An IP netmask |
IP status
IP_STATUS = Cardinal;
|
Status code returned from IP APIs |
MIB if number
TMibIfnumber = MIB_IFNUMBER;
PMibIfnumber = PMIB_IFNUMBER;
PMIB_IFNUMBER = ^MIB_IFNUMBER;
MIB_IFNUMBER = record
MIB if row
MIB if table
TMibIftable = MIB_IFTABLE;
PMibIftable = PMIB_IFTABLE;
PMIB_IFTABLE = ^MIB_IFTABLE;
MIB_IFTABLE = record
MIB ICMP statistics
MIB ICMP information
MIB ICMP
MIB UDP statistics
TMibUdpStats = MIB_UDPSTATS;
PMibUdpStats = PMIB_UDPSTATS;
PMIB_UDPSTATS = ^MIB_UDPSTATS;
MIB_UDPSTATS = record
MIB UDP row
TMibUdpRow = MIB_UDPROW;
PMibUdpRow = PMIB_UDPROW;
PMIB_UDPROW = ^MIB_UDPROW;
MIB_UDPROW = record
MIB UDP table
TMibUdpTable = MIB_UDPTABLE;
PMibUdpTable = PMIB_UDPTABLE;
PMIB_UDPTABLE = ^MIB_UDPTABLE;
MIB_UDPTABLE = record
MIB TCP statistics
TMibTcpStats = MIB_TCPSTATS;
PMibTcpStats = PMIB_TCPSTATS;
PMIB_TCPSTATS = ^MIB_TCPSTATS;
MIB_TCPSTATS = record
MIB TCP row
TMibTcpRow = MIB_TCPROW;
PMibTcpRow = PMIB_TCPROW;
PMIB_TCPROW = ^MIB_TCPROW;
MIB_TCPROW = record
MIB TCP table
TMibTcpTable = MIB_TCPTABLE;
PMibTcpTable = PMIB_TCPTABLE;
PMIB_TCPTABLE = ^MIB_TCPTABLE;
MIB_TCPTABLE = record
MIB IP statistics
TMibIpStats = MIB_IPSTATS;
PMibIpStats = PMIB_IPSTATS;
PMIB_IPSTATS = ^MIB_IPSTATS;
MIB_IPSTATS = record
MIB IP address row
TMibIpAddrRow = MIB_IPADDRROW;
PMibIpAddrRow = PMIB_IPADDRROW;
PMIB_IPADDRROW = ^MIB_IPADDRROW;
MIB_IPADDRROW = record
MIB IP address table
TMibIpAddrTable = MIB_IPADDRTABLE;
PMibIpAddrTable = PMIB_IPADDRTABLE;
PMIB_IPADDRTABLE = ^MIB_IPADDRTABLE;
MIB_IPADDRTABLE = record
MIB IP forward number
TMibIpForwardNumber = MIB_IPFORWARDNUMBER;
PMibIpForwardNumber = PMIB_IPFORWARDNUMBER;
PMIB_IPFORWARDNUMBER = ^MIB_IPFORWARDNUMBER;
MIB_IPFORWARDNUMBER = record
MIB IP forward row
TMibIpForwardRow = MIB_IPFORWARDROW;
PMibIpForwardRow = PMIB_IPFORWARDROW;
PMIB_IPFORWARDROW = ^MIB_IPFORWARDROW;
MIB_IPFORWARDROW = record
MIB IP forward table
TMibIpForwardTable = MIB_IPFORWARDTABLE;
PMibIpForwardTable = PMIB_IPFORWARDTABLE;
PMIB_IPFORWARDTABLE = ^MIB_IPFORWARDTABLE;
MIB_IPFORWARDTABLE = record
MIB IP net row
TMibIpNetRow = MIB_IPNETROW;
PMibIpNetRow = PMIB_IPNETROW;
PMIB_IPNETROW = ^MIB_IPNETROW;
MIB_IPNETROW = record
MIB IP net table
TMibIpNetTable = MIB_IPNETTABLE;
PMibIpNetTable = PMIB_IPNETTABLE;
PMIB_IPNETTABLE = ^MIB_IPNETTABLE;
MIB_IPNETTABLE = record
IP adapter index map
TIpAdapterIndexMap = IP_ADAPTER_INDEX_MAP;
PIpAdapterIndexMap = PIP_ADAPTER_INDEX_MAP;
PIP_ADAPTER_INDEX_MAP = ^IP_ADAPTER_INDEX_MAP;
IP_ADAPTER_INDEX_MAP = record
IP interface info
TIpInterfaceInfo = IP_INTERFACE_INFO;
PIpInterfaceInfo = PIP_INTERFACE_INFO;
PIP_INTERFACE_INFO = ^IP_INTERFACE_INFO;
IP_INTERFACE_INFO = record
IP unidirectional adapter address
TIpUnidirectionalAdapterAddress = IP_UNIDIRECTIONAL_ADAPTER_ADDRESS;
PIpUnidirectionalAdapterAddress = PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS;
PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS = ^IP_UNIDIRECTIONAL_ADAPTER_ADDRESS;
IP_UNIDIRECTIONAL_ADAPTER_ADDRESS = record
IP address string
TIpAddressString = IP_ADDRESS_STRING;
PIpAddressString = PIP_MASK_STRING;
PIP_ADDRESS_STRING = ^IP_ADDRESS_STRING;
IP_MASK_STRING = IP_ADDRESS_STRING;
PIP_MASK_STRING = ^IP_MASK_STRING;
IP_ADDRESS_STRING = record
IP addr string
TIpAddrString = IP_ADDR_STRING;
PIpAddrString = PIP_ADDR_STRING;
PIP_ADDR_STRING = ^IP_ADDR_STRING;
IP_ADDR_STRING = record
IP adapter information
TIpAdapterInfo = IP_ADAPTER_INFO;
PIpAdapterInfo = PIP_ADAPTER_INFO;
PIP_ADAPTER_INFO = ^IP_ADAPTER_INFO;
IP_ADAPTER_INFO = record
IP per adapter information
TIpPerAdapterInfo = IP_PER_ADAPTER_INFO;
PIpPerAdapterInfo = PIP_PER_ADAPTER_INFO;
PIP_PER_ADAPTER_INFO = ^IP_PER_ADAPTER_INFO;
IP_PER_ADAPTER_INFO = record
Fixed information
TFixedInfo = FIXED_INFO;
PFixedInfo = PFIXED_INFO;
PFIXED_INFO = ^FIXED_INFO;
FIXED_INFO = record
Public variables
None defined
Function declarations
Initialization functions
Helper functions
function IPHelperConvertError(Status:Integer):DWORD;
IP helper functions
function GetIfTable(pIfTable: PMIB_IFTABLE; var pdwSize: DWORD; bOrder: BOOL): DWORD;
function GetIpAddrTable(pIpAddrTable: PMIB_IPADDRTABLE; var pdwSize: DWORD; bOrder: BOOL): DWORD;
function GetIpNetTable(pIpNetTable: PMIB_IPNETTABLE; var pdwSize: DWORD; bOrder: BOOL): DWORD;
function GetIpForwardTable(pIpForwardTable: PMIB_IPFORWARDTABLE; var pdwSize: DWORD; bOrder: BOOL): DWORD;
function CreateIpForwardEntry(const pRoute: MIB_IPFORWARDROW): DWORD;
function SetIpForwardEntry(const pRoute: MIB_IPFORWARDROW): DWORD;
function DeleteIpForwardEntry(const pRoute: MIB_IPFORWARDROW): DWORD;
function SetIpStatistics(const pIpStats: MIB_IPSTATS): DWORD;
function GetInterfaceInfo(pIfTable: PIP_INTERFACE_INFO; var dwOutBufLen: DWORD): DWORD;
function GetNetworkParams(pFixedInfo: PFIXED_INFO; var pOutBufLen: DWORD): DWORD;
function GetAdaptersInfo(pAdapterInfo: PIP_ADAPTER_INFO; var pOutBufLen: DWORD): DWORD;
function IpReleaseAddress(const AdapterInfo: IP_ADAPTER_INDEX_MAP): DWORD;
function IpRenewAddress(const AdapterInfo: IP_ADAPTER_INDEX_MAP): DWORD;
Return to Unit Reference