Unit GlobalSock

From Ultibo.org
Revision as of 00:26, 3 March 2017 by Ultibo (Talk | contribs)

Jump to: navigation, search

Return to Unit Reference


Description


Ultibo Global Socket Definitions

To be documented

Constants



[Expand]
Global socket constants FD_*


[Expand]
IP protocol constants IPPROTO_*


[Expand]
IP port constants IPPORT_*


[Expand]
IP options constants IP_*


[Expand]
Socket type constants SOCK_*


[Expand]
Socket option constants SO_*


[Expand]
TCP option constants TCP_*


[Expand]
UDP option constants UDP_*


[Expand]
Address family constants AF_*


[Expand]
Protocol family constants PF_*


[Expand]
Message flag constants MSG_*


[Expand]
Socket error constants WSAE*, EAI_*


[Expand]
Shutdown options SD_*


[Expand]
WsControlEx option constants WSA_*


[Expand]
Address info flag constants AI_*


[Expand]
Name info flag constants NI_*


Type definitions



Integer types

tOS_INT = LongInt;
tOS_UINT = DWORD;
ptOS_INT = ^tOS_INT;
ptOS_UINT = ^tOS_UINT;
u_int = tOS_UINT;
pu_int = ^u_int;

Character types

u_char = Char;
pu_char = ^u_char;

Numeric types

u_short = Word;
pu_short = ^u_short;
u_long = DWORD;
pu_long = ^u_long;

Socket types

TSocket = GlobalTypes.TSocket;

WSA event

WSAEVENT = GlobalTypes.WSAEVENT;
PWSAEVENT = ^WSAEVENT;
LPWSAEVENT = PWSAEVENT;

MB character

PMBChar = PChar;

FD set

[Expand]

TFDSet = fdset;

PFDSet = ^TFDSet;

fdset = record

Time value

[Expand]

TTimeVal = timeval;

PTimeVal = ^TTimeVal;

timeval = record

Host entry

[Expand]

THostEnt = hostent;

PHostEnt = ^THostEnt;

hostent = record

Network entry

[Expand]

TNetEnt = netent;

PNetEnt = ^TNetEnt;

netent = record

Service entry

[Expand]

TServEnt = servent;

PServEnt = ^TServEnt;

servent = record

Protocol entry

[Expand]

TProtoEnt = protoent;

PProtoEnt = ^TProtoEnt;

protoent = record

Address types

[Expand]

SunB = packed record


[Expand]

SunW = packed record

IPv4 address

[Expand]

TInAddr = in_addr;

PInAddr = ^TInAddr;

in_addr = record

IPv6 address

[Expand]

TIn6Addr = in6_addr;

PIn6Addr = ^TIn6Addr;

in6_addr = record

IPX address

[Expand]

TIpxAddr = ipx_addr;

PIpxAddr = ^TIpxAddr;

ipx_addr = record

Socket address in IPv4

[Expand]

TSockAddrIn = sockaddr_in;

PSockAddrIn = ^TSockAddrIn;

sockaddr_in = record

Socket address in IPv6

[Expand]

TSockAddrIn6 = sockaddr_in6;

PSockAddrIn6 = ^TSockAddrIn6;

sockaddr_in6 = record

Socket address IPX

[Expand]

TSockAddrIpx = sockaddr_ipx;

PSockAddrIpx = ^TSockAddrIpx;

sockaddr_ipx = record

Socket address

Note: Structure used by kernel to store most addresses.
PSOCKADDR = ^TSockAddr;
TSockAddr = sockaddr_in;

Socket address IPv6

PSOCKADDR6 = ^TSockAddr6;
TSockAddr6 = sockaddr_in6;

Socket protocol

[Expand]

TSockProto = sockproto;

PSockProto = ^TSockProto;

sockproto = record

Linger

[Expand]

TLinger = linger;

PLinger = ^TLinger;

linger = record

WSA data

[Expand]

TWSAData = WSAData;

PWSAData = ^TWSAData;

WSAData = record

Transmit file buffers

[Expand]

TTransmitFileBuffers = _TRANSMIT_FILE_BUFFERS;

TRANSMIT_FILE_BUFFERS = _TRANSMIT_FILE_BUFFERS;

PTransmitFileBuffers = ^TTransmitFileBuffers;

_TRANSMIT_FILE_BUFFERS = record

Multicast request

[Expand]

TMulticastRequest = ip_mreq;

PMulticastRequest = ^TMulticastRequest;

ip_mreq = record

WSA interface row

[Expand]

TWSAIfRow = WSA_IFROW;

PWSAIfRow = PWSA_IFROW;

PWSA_IFROW = ^WSA_IFROW;

WSA_IFROW = record

WSA interface table

[Expand]

TWSAIftable = WSA_IFTABLE;

PWSAIftable = PWSA_IFTABLE;

PWSA_IFTABLE = ^WSA_IFTABLE;

WSA_IFTABLE = record

WSA IP statistics

[Expand]

TWSAIpStats = WSA_IPSTATS;

PWSAIpStats = PWSA_IPSTATS;

PWSA_IPSTATS = ^WSA_IPSTATS;

WSA_IPSTATS = record

WSA IP address row

[Expand]

TWSAIpAddrRow = WSA_IPADDRROW;

PWSAIpAddrRow = PWSA_IPADDRROW;

PWSA_IPADDRROW = ^WSA_IPADDRROW;

WSA_IPADDRROW = record

WSA IP address table

[Expand]

TWSAIpAddrTable = WSA_IPADDRTABLE;

PWSAIpAddrTable = PWSA_IPADDRTABLE;

PWSA_IPADDRTABLE = ^WSA_IPADDRTABLE;

WSA_IPADDRTABLE = record

WSA IP adapter index map

[Expand]

TWSAIpAdapterIndexMap = WSA_IP_ADAPTER_INDEX_MAP;

PWSAIpAdapterIndexMap = PWSA_IP_ADAPTER_INDEX_MAP;

PWSA_IP_ADAPTER_INDEX_MAP = ^WSA_IP_ADAPTER_INDEX_MAP;

WSA_IP_ADAPTER_INDEX_MAP = record

WSA IP interface information

[Expand]

TWSAIpInterfaceInfo = WSA_IP_INTERFACE_INFO;

PWSAIpInterfaceInfo = PWSA_IP_INTERFACE_INFO;

PWSA_IP_INTERFACE_INFO = ^WSA_IP_INTERFACE_INFO;

WSA_IP_INTERFACE_INFO = record

WSA IP address string

[Expand]

PWSA_IP_ADDRESS_STRING = ^WSA_IP_ADDRESS_STRING;

WSA_IP_MASK_STRING = WSA_IP_ADDRESS_STRING;

TWSAIpAddressString = WSA_IP_ADDRESS_STRING;

PWSAIpAddressString = PWSA_IP_MASK_STRING;

PWSA_IP_MASK_STRING = ^WSA_IP_MASK_STRING;

WSA_IP_ADDRESS_STRING = record

WSA IP address string

[Expand]

TWSAIpAddrString = WSA_IP_ADDR_STRING;

PWSAIpAddrString = PWSA_IP_ADDR_STRING;

PWSA_IP_ADDR_STRING = ^WSA_IP_ADDR_STRING;

WSA_IP_ADDR_STRING = record

WSA IP adapter information

[Expand]

TWSAIpAdapterInfo = WSA_IP_ADAPTER_INFO;

PWSAIpAdapterInfo = PWSA_IP_ADAPTER_INFO;

PWSA_IP_ADAPTER_INFO = ^WSA_IP_ADAPTER_INFO;

WSA_IP_ADAPTER_INFO = record

WSA fixed information

[Expand]

TWSAFixedInfo = WSA_FIXED_INFO;

PWSAFixedInfo = PWSA_FIXED_INFO;

PWSA_FIXED_INFO = ^WSA_FIXED_INFO;

WSA_FIXED_INFO = record

Net to address

PNetToAddr = ^TNetToAddr;
TNetToAddr = array[0..MAX_NAME_SIZE - 1] of Char;

WSA binding

[Expand]

TWSABinding = WSABinding;

PWSABinding = ^TWSABinding;

WSABinding = record

WSA provider

[Expand]

TWSAProvider = WSAProvider;

PWSAProvider = ^TWSAProvider;

WSAProvider = record

WSA interface

[Expand]

TWSAInterface = WSAInterface;

PWSAInterface = ^TWSAInterface;

WSAInterface = record

WSA configuration

[Expand]

TWSAConfig = WSAConfig;

PWSAConfig = ^TWSAConfig;

WSAConfig = record

WSA network binding

[Expand]

TWSAExtendedBinding = WSAExtendedBinding;

PWSAExtendedBinding = ^TWSAExtendedBinding;

WSAExtendedBinding = record

WSA network provider

[Expand]

TWSAExtendedProvider = WSAExtendedProvider;

PWSAExtendedProvider = ^TWSAExtendedProvider;

WSAExtendedProvider = record

WSA network interface

[Expand]

TWSAExtendedInterface = WSAExtendedInterface;

PWSAExtendedInterface = ^TWSAExtendedInterface;

WSAExtendedInterface = record

WSA network configuration

[Expand]

TWSAExtendedConfig = WSAExtendedConfig;

PWSAExtendedConfig = ^TWSAExtendedConfig;

WSAExtendedConfig = record

Address information

[Expand]

PAddrInfo = ^TAddrInfo;

TAddrInfo = record


Public variables


None defined

Function declarations



Global socket functions

[Expand]
procedure FD_CLR(Socket: TSocket; var FDSet: TFDSet);
Description: To be documented


[Expand]
function FD_ISSET(Socket: TSocket; var FDSet: TFDSet): Boolean;
Description: To be documented


[Expand]
procedure FD_SET(Socket: TSocket; var FDSet: TFDSet);
Description: To be documented


[Expand]
procedure FD_ZERO(var FDSet: TFDSet);
Description: To be documented


[Expand]
function SequenceLT(A,B:LongInt):Boolean; inline;
Description: To be documented


[Expand]
function SequenceLEQ(A,B:LongInt):Boolean; inline;
Description: To be documented


[Expand]
function SequenceGT(A,B:LongInt):Boolean; inline;
Description: To be documented


[Expand]
function SequenceGEQ(A,B:LongInt):Boolean; inline;
Description: To be documented


[Expand]
function ProtocolToString(Protocol:Word):String;
Description: To be documented


Return to Unit Reference