Difference between revisions of "Unit Sockets"
From Ultibo.org
Line 12: | Line 12: | ||
---- | ---- | ||
− | '' | + | |
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Sockets specific constants''' <code> SOCKETS_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>SOCKETS_DEVICE_TIMER_INTERVAL = 500;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>SOCKETS_CONFIG_TIMER_INTERVAL = 1000;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCKETS_FILTER_TIMER_INTERVAL = 1000;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCKETS_PROTOCOL_TIMER_INTERVAL = 250;</code> | ||
+ | | Previously 100 | ||
+ | |- | ||
+ | | <code>SOCKETS_SOCKET_TIMER_INTERVAL = 1000;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCKETS_AUTH_TIMER_INTERVAL = 1000;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCKETS_MONITOR_TIMER_INTERVAL = 1000;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCKETS_TRANSPORT_TIMER_INTERVAL = 1000;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCKETS_ADAPTER_TIMER_INTERVAL = 1000;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>INADDR_ANY = GlobalSock.INADDR_ANY;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>INADDR_NONE = GlobalSock.INADDR_NONE;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''Level number for (get/set)sockopt() to apply to socket itself'' | ||
+ | |- | ||
+ | | <code>SOL_SOCKET = GlobalSock.SOL_SOCKET;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''Maximum queue length specifiable by listen'' | ||
+ | |- | ||
+ | | <code>SOMAXCONN = GlobalSock.SOMAXCONN;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''This is used instead of -1, since the TSocket type is unsigned'' | ||
+ | |- | ||
+ | | <code>INVALID_SOCKET = GlobalSock.INVALID_SOCKET;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCKET_ERROR = GlobalSock.SOCKET_ERROR;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>INET_ADDRSTR_ANY = GlobalSock.INET_ADDRSTR_ANY;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>INET6_ADDRSTR_INIT = GlobalSock.INET6_ADDRSTR_INIT;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>INET_ADDRSTR_BROADCAST = GlobalSock.INET_ADDRSTR_BROADCAST;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>INET_ADDRSTRLEN = GlobalSock.INET_ADDRSTRLEN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>INET6_ADDRSTRLEN = GlobalSock.INET6_ADDRSTRLEN;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>IN6ADDR_ANY_INIT:TIn6Addr = (u6_addr16: (0, 0, 0, 0, 0, 0, 0, 0));</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IN6ADDR_LOOPBACK_INIT:TIn6Addr = (u6_addr8: (0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1));</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>NoAddress: in_addr = (s_addr:0);</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>NoNet: in_addr = (s_addr:0);</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>NoAddress6: in6_addr = (u6_addr16:(0,0,0,0,0,0,0,0));</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>NoNet6: in6_addr = (u6_addr16:(0,0,0,0,0,0,0,0));</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Socket error constants''' <code> Esock*, EAI_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>EsockEINTR = WSAEINTR;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>EsockEBADF = WSAEBADF;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockEFAULT = WSAEFAULT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockEINVAL = WSAEINVAL;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockEACCESS = WSAEACCES;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockEMFILE = WSAEMFILE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockEMSGSIZE = WSAEMSGSIZE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockENOBUFS = WSAENOBUFS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockENOTCONN = WSAENOTCONN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockENOTSOCK = WSAENOTSOCK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockEPROTONOSUPPORT = WSAEPROTONOSUPPORT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockEWOULDBLOCK = WSAEWOULDBLOCK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EsockADDRINUSE = WSAEADDRINUSE;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''Error codes from getaddrinfo()'' | ||
+ | |- | ||
+ | | <code>EAI_AGAIN = GlobalSock.EAI_AGAIN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EAI_BADFLAGS = GlobalSock.EAI_BADFLAGS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EAI_FAIL = GlobalSock.EAI_FAIL;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EAI_FAMILY = GlobalSock.EAI_FAMILY;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EAI_MEMORY = GlobalSock.EAI_MEMORY;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EAI_NODATA = GlobalSock.EAI_NODATA;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EAI_NONAME = GlobalSock.EAI_NONAME;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EAI_SERVICE = GlobalSock.EAI_SERVICE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>EAI_SOCKTYPE = GlobalSock.EAI_SOCKTYPE;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>EAI_NODATA = GlobalSock.EAI_NODATA;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Socket shutdown option constants''' <code> SHUT_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>SHUT_RD = SD_RECEIVE;</code> | ||
+ | | Aliases so we are cross-platform | ||
+ | |- | ||
+ | | <code>SHUT_WR = SD_SEND;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SHUT_RDWR = SD_BOTH;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Socket type constants''' <code> SOCK_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>SOCK_STREAM = GlobalSock.SOCK_STREAM;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>SOCK_DGRAM = GlobalSock.SOCK_DGRAM;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCK_RAW = GlobalSock.SOCK_RAW;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCK_RDM = GlobalSock.SOCK_RDM;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SOCK_SEQPACKET = GlobalSock.SOCK_SEQPACKET;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Socket input/output constants''' <code> S_IN* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | |colspan="2"|Two constants to determine whether part of socket is for in or output | ||
+ | |- | ||
+ | | <code>S_IN = 0;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>S_OUT = 1;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Address family constants''' <code> AF_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>AF_UNSPEC = GlobalSock.AF_UNSPEC;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>AF_UNIX = GlobalSock.AF_UNIX;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_INET = GlobalSock.AF_INET;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_IMPLINK = GlobalSock.AF_IMPLINK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_PUP = GlobalSock.AF_PUP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_CHAOS = GlobalSock.AF_CHAOS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_IPX = GlobalSock.AF_IPX;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_NS = GlobalSock.AF_NS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_ISO = GlobalSock.AF_ISO;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_OSI = GlobalSock.AF_OSI;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_ECMA = GlobalSock.AF_ECMA;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_DATAKIT = GlobalSock.AF_DATAKIT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_CCITT = GlobalSock.AF_CCITT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_SNA = GlobalSock.AF_SNA;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_DECnet = GlobalSock.AF_DECnet;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_DLI = GlobalSock.AF_DLI;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_LAT = GlobalSock.AF_LAT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_HYLINK = GlobalSock.AF_HYLINK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_APPLETALK = GlobalSock.AF_APPLETALK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_NETBIOS = GlobalSock.AF_NETBIOS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_VOICEVIEW = GlobalSock.AF_VOICEVIEW;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_FIREFOX = GlobalSock.AF_FIREFOX;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_UNKNOWN1 = GlobalSock.AF_UNKNOWN1;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_BAN = GlobalSock.AF_BAN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_ATM = GlobalSock.AF_ATM;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_INET6 = GlobalSock.AF_INET6;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_CLUSTER = GlobalSock.AF_CLUSTER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_12844 = GlobalSock.AF_12844;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_IRDA = GlobalSock.AF_IRDA;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AF_NETDES = GlobalSock.AF_NETDES;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>AF_MAX = GlobalSock.AF_MAX;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Protocol family constants''' <code> PF_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>PF_UNSPEC = GlobalSock.PF_UNSPEC;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>PF_UNIX = GlobalSock.PF_UNIX;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_INET = GlobalSock.PF_INET;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_IMPLINK = GlobalSock.PF_IMPLINK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_PUP = GlobalSock.PF_PUP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_CHAOS = GlobalSock.PF_CHAOS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_NS = GlobalSock.PF_NS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_IPX = GlobalSock.PF_IPX;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_ISO = GlobalSock.PF_ISO;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_OSI = GlobalSock.PF_OSI;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_ECMA = GlobalSock.PF_ECMA;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_DATAKIT = GlobalSock.PF_DATAKIT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_CCITT = GlobalSock.PF_CCITT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_SNA = GlobalSock.PF_SNA;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_DECnet = GlobalSock.PF_DECnet;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_DLI = GlobalSock.PF_DLI;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_LAT = GlobalSock.PF_LAT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_HYLINK = GlobalSock.PF_HYLINK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_APPLETALK = GlobalSock.PF_APPLETALK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_VOICEVIEW = GlobalSock.PF_VOICEVIEW;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_FIREFOX = GlobalSock.PF_FIREFOX;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_UNKNOWN1 = GlobalSock.PF_UNKNOWN1;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_BAN = GlobalSock.PF_BAN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_ATM = GlobalSock.PF_ATM;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_INET6 = GlobalSock.PF_INET6;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_CLUSTER = GlobalSock.PF_CLUSTER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_12844 = GlobalSock.PF_12844;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_IRDA = GlobalSock.PF_IRDA;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>PF_NETDES = GlobalSock.PF_NETDES;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>PF_MAX = GlobalSock.PF_MAX;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''IP protocol constants''' <code> IPPROTO_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>IPPROTO_IP = GlobalSock.IPPROTO_IP;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>IPPROTO_ICMP = GlobalSock.IPPROTO_ICMP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_IGMP = GlobalSock.IPPROTO_IGMP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_GGP = GlobalSock.IPPROTO_GGP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_TCP = GlobalSock.IPPROTO_TCP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_EGP = GlobalSock.IPPROTO_EGP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_PUP = GlobalSock.IPPROTO_PUP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_UDP GlobalSock.IPPROTO_UDP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_HMP = GlobalSock.IPPROTO_HMP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_IDP = GlobalSock.IPPROTO_IDP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_RDP = GlobalSock.IPPROTO_RDP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_IPV6 = GlobalSock.IPPROTO_IPV6;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_ROUTING = GlobalSock.IPPROTO_ROUTING;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_FRAGMENT = GlobalSock.IPPROTO_FRAGMENT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_ICMPV6 = GlobalSock.IPPROTO_ICMPV6;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_RVD = GlobalSock.IPPROTO_RVD;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_ND = GlobalSock.IPPROTO_ND;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_RAW = GlobalSock.IPPROTO_RAW;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPROTO_MAX = GlobalSock.IPPROTO_MAX;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''IP port constants ''' <code> IPPORT_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | |colspan="2"|''Port/socket numbers: network standard functions'' | ||
+ | |- | ||
+ | | <code>IPPORT_ANY = GlobalSock.IPPORT_ANY;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>IPPORT_ECHO = GlobalSock.IPPORT_ECHO;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_DISCARD = GlobalSock.IPPORT_DISCARD;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_SYSTAT = GlobalSock.IPPORT_SYSTAT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_DAYTIME = GlobalSock.IPPORT_DAYTIME;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_NETSTAT = GlobalSock.IPPORT_NETSTAT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_FTP = GlobalSock.IPPORT_FTP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_TELNET = GlobalSock.IPPORT_TELNET;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_SMTP = GlobalSock.IPPORT_SMTP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_TIMESERVER = GlobalSock.IPPORT_TIMESERVER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_NAMESERVER = GlobalSock.IPPORT_NAMESERVER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_WHOIS = GlobalSock.IPPORT_WHOIS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_DNS = GlobalSock.IPPORT_DNS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_MTP= GlobalSock.IPPORT_MTP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_BOOTPS = GlobalSock.IPPORT_BOOTPS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_BOOTPC = GlobalSock.IPPORT_BOOTPC;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''Port/socket numbers: host specific functions'' | ||
+ | |- | ||
+ | | <code>IPPORT_TFTP = GlobalSock.IPPORT_TFTP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_RJE = GlobalSock.IPPORT_RJE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_FINGER = GlobalSock.IPPORT_FINGER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_TTYLINK = GlobalSock.IPPORT_TTYLINK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_SUPDUP = GlobalSock.IPPORT_SUPDUP;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''UNIX TCP sockets'' | ||
+ | |- | ||
+ | | <code>IPPORT_EXECSERVER = GlobalSock.IPPORT_EXECSERVER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_LOGINSERVER = GlobalSock.IPPORT_LOGINSERVER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_CMDSERVER = GlobalSock.IPPORT_CMDSERVER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_EFSSERVER = GlobalSock.IPPORT_EFSSERVER;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''UNIX UDP sockets'' | ||
+ | |- | ||
+ | | <code>IPPORT_BIFFUDP = GlobalSock.IPPORT_BIFFUDP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_WHOSERVER = GlobalSock.IPPORT_WHOSERVER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IPPORT_ROUTESERVER = GlobalSock.IPPORT_ROUTESERVER;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''Ports < IPPORT_RESERVED are reserved for privileged processes (e.g. root)'' | ||
+ | |- | ||
+ | | <code>IPPORT_RESERVED = GlobalSock.IPPORT_RESERVED;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''IP option constants''' <code> IP_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | |colspan="2"|Options for use with [gs]etsockopt at the IP level | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>IP_OPTIONS = GlobalSock.IP_OPTIONS;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>IP_MULTICAST_IF = GlobalSock.IP_MULTICAST_IF;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IP_MULTICAST_TTL = GlobalSock.IP_MULTICAST_TTL;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IP_MULTICAST_LOOP = GlobalSock.IP_MULTICAST_LOOP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IP_ADD_MEMBERSHIP = GlobalSock.IP_ADD_MEMBERSHIP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IP_DROP_MEMBERSHIP = GlobalSock.IP_DROP_MEMBERSHIP;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IP_TTL = GlobalSock.IP_TTL;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IP_TOS = GlobalSock.IP_TOS;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IP_DONTFRAGMENT = GlobalSock.IP_DONTFRAGMENT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>IP_HDRINCL = GlobalSock.IP_HDRINCL;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Socket option constants''' <code> SO_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | |colspan="2"|Option flags per-socket | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>SO_DEBUG = GlobalSock.SO_DEBUG;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>SO_ACCEPTCONN = GlobalSock.SO_ACCEPTCONN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_REUSEADDR = GlobalSock.SO_REUSEADDR;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_KEEPALIVE = GlobalSock.SO_KEEPALIVE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_DONTROUTE = GlobalSock.SO_DONTROUTE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_BROADCAST = GlobalSock.SO_BROADCAST;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_USELOOPBACK = GlobalSock.SO_USELOOPBACK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_LINGER = GlobalSock.SO_LINGER;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_OOBINLINE = GlobalSock.SO_OOBINLINE;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>SO_DONTLINGER = GlobalSock.SO_DONTLINGER;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''Additional options'' | ||
+ | |- | ||
+ | | <code>SO_SNDBUF = GlobalSock.SO_SNDBUF;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_RCVBUF = GlobalSock.SO_RCVBUF;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_SNDLOWAT = GlobalSock.SO_SNDLOWAT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_RCVLOWAT = GlobalSock.SO_RCVLOWAT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_SNDTIMEO = GlobalSock.SO_SNDTIMEO;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_RCVTIMEO = GlobalSock.SO_RCVTIMEO;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_ERROR = GlobalSock.SO_ERROR;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_TYPE = GlobalSock.SO_TYPE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_CONNTIMEO = GlobalSock.SO_CONNTIMEO;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''Options for connect and disconnect data and options. Used only by non-TCP/IP transports such as DECNet, OSI TP4, etc.'' | ||
+ | |- | ||
+ | | <code>SO_CONNDATA = GlobalSock.SO_CONNDATA;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_CONNOPT = GlobalSock.SO_CONNOPT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_DISCDATA = GlobalSock.SO_DISCDATA;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_DISCOPT = GlobalSock.SO_DISCOPT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_CONNDATALEN = GlobalSock.SO_CONNDATALEN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_CONNOPTLEN = GlobalSock.SO_CONNOPTLEN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_DISCDATALEN = GlobalSock.SO_DISCDATALEN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_DISCOPTLEN = GlobalSock.SO_DISCOPTLEN;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''Options for opening sockets for synchronous access'' | ||
+ | |- | ||
+ | | <code>SO_OPENTYPE = GlobalSock.SO_OPENTYPE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_SYNCHRONOUS_ALERT = GlobalSock.SO_SYNCHRONOUS_ALERT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_SYNCHRONOUS_NONALERT = GlobalSock.SO_SYNCHRONOUS_NONALERT;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | |colspan="2"|''Other NT-specific options'' | ||
+ | |- | ||
+ | | <code>SO_MAXDG = GlobalSock.SO_MAXDG;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_MAXPATHDG = GlobalSock.SO_MAXPATHDG;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_UPDATE_ACCEPT_CONTEXT = GlobalSock.SO_UPDATE_ACCEPT_CONTEXT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>SO_CONNECT_TIME = GlobalSock.SO_CONNECT_TIME;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''TCP option constants''' <code> TCP_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>TCP_NODELAY = GlobalSock.TCP_NODELAY;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>TCP_MAXSEG = GlobalSock.TCP_MAXSEG;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>TCP_NOPUSH = GlobalSock.TCP_NOPUSH;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>TCP_NOOPT = GlobalSock.TCP_NOOPT;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>TCP_BSDURGENT = GlobalSock.TCP_BSDURGENT;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>TCP_WSCALE = GlobalSock.TCP_WSCALE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>TCP_NOSACK = GlobalSock.TCP_NOSACK;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''UDP option constants''' <code> UDP_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>UDP_NOCHECKSUM = GlobalSock.UDP_NOCHECKSUM;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Message flag constants''' <code> MSG_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | | <code>MSG_OOB = GlobalSock.MSG_OOB;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>MSG_PEEK = GlobalSock.MSG_PEEK;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>MSG_DONTROUTE = GlobalSock.MSG_DONTROUTE;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>MSG_INTERRUPT = GlobalSock.MSG_INTERRUPT;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>MSG_PARTIAL = GlobalSock.MSG_PARTIAL;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Address info flag constants''' <code> AI_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | |colspan="2"|Flags used in "hints" argument to getaddrinfo() | ||
+ | |- | ||
+ | |colspan="2"|Note: Under Linux these values may be different | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>AI_PASSIVE = GlobalSock.AI_PASSIVE;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>AI_CANONNAME = GlobalSock.AI_CANONNAME;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_NUMERICHOST = GlobalSock.AI_NUMERICHOST;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_NUMERICSERV = GlobalSock.AI_NUMERICSERV;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_ALL = GlobalSock.AI_ALL;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_ADDRCONFIG = GlobalSock.AI_ADDRCONFIG;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_V4MAPPED = GlobalSock.AI_V4MAPPED;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_NON_AUTHORITATIVE = GlobalSock.AI_NON_AUTHORITATIVE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_SECURE = GlobalSock.AI_SECURE;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_RETURN_PREFERRED_NAMES = GlobalSock.AI_RETURN_PREFERRED_NAMES;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_FQDN = GlobalSock.AI_FQDN;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>AI_FILESERVER = GlobalSock.AI_FILESERVER;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
+ | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | ||
+ | <div style="font-size: 14px; padding-left: 12px;">'''Name info flag constants''' <code> NI_* </code></div> | ||
+ | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | ||
+ | {| class="wikitable" style="font-size: 14px; background: white;" | ||
+ | |- | ||
+ | |colspan="2"|Flags for getnameinfo() | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>NI_NOFQDN = GlobalSock.NI_NOFQDN;</code> | ||
+ | | style="width: 50%;"| | ||
+ | |- | ||
+ | | <code>NI_NUMERICHOST = GlobalSock.NI_NUMERICHOST;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>NI_NAMEREQD = GlobalSock.NI_NAMEREQD;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>NI_NUMERICSERV = GlobalSock.NI_NUMERICSERV;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>NI_DGRAM = GlobalSock.NI_DGRAM;</code> | ||
+ | | | ||
+ | |- | ||
+ | |colspan="2"| | ||
+ | |- | ||
+ | | <code>NI_MAXHOST = GlobalSock.NI_MAXHOST;</code> | ||
+ | | | ||
+ | |- | ||
+ | | <code>NI_MAXSERV = GlobalSock.NI_MAXSERV;</code> | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | </div></div> | ||
+ | <br /> | ||
=== Type definitions === | === Type definitions === |
Revision as of 06:08, 23 December 2016
Return to Unit Reference
Description
Ultibo Network Sockets interface unit
This unit includes the interface normally provided by the sockets unit in the FPC package rtl-extras. The rtl-extras package does not build the sockets unit for target Ultibo as this unit will always be available to provide the required functionality for any other package that uses it.
Constants
Sockets specific constants
SOCKETS_*
SOCKETS_DEVICE_TIMER_INTERVAL = 500;
|
|
SOCKETS_CONFIG_TIMER_INTERVAL = 1000;
|
|
SOCKETS_FILTER_TIMER_INTERVAL = 1000;
|
|
SOCKETS_PROTOCOL_TIMER_INTERVAL = 250;
|
Previously 100 |
SOCKETS_SOCKET_TIMER_INTERVAL = 1000;
|
|
SOCKETS_AUTH_TIMER_INTERVAL = 1000;
|
|
SOCKETS_MONITOR_TIMER_INTERVAL = 1000;
|
|
SOCKETS_TRANSPORT_TIMER_INTERVAL = 1000;
|
|
SOCKETS_ADAPTER_TIMER_INTERVAL = 1000;
|
|
INADDR_ANY = GlobalSock.INADDR_ANY;
|
|
INADDR_NONE = GlobalSock.INADDR_NONE;
|
|
Level number for (get/set)sockopt() to apply to socket itself | |
SOL_SOCKET = GlobalSock.SOL_SOCKET;
|
|
Maximum queue length specifiable by listen | |
SOMAXCONN = GlobalSock.SOMAXCONN;
|
|
This is used instead of -1, since the TSocket type is unsigned | |
INVALID_SOCKET = GlobalSock.INVALID_SOCKET;
|
|
SOCKET_ERROR = GlobalSock.SOCKET_ERROR;
|
|
INET_ADDRSTR_ANY = GlobalSock.INET_ADDRSTR_ANY;
|
|
INET6_ADDRSTR_INIT = GlobalSock.INET6_ADDRSTR_INIT;
|
|
INET_ADDRSTR_BROADCAST = GlobalSock.INET_ADDRSTR_BROADCAST;
|
|
INET_ADDRSTRLEN = GlobalSock.INET_ADDRSTRLEN;
|
|
INET6_ADDRSTRLEN = GlobalSock.INET6_ADDRSTRLEN;
|
|
IN6ADDR_ANY_INIT:TIn6Addr = (u6_addr16: (0, 0, 0, 0, 0, 0, 0, 0));
|
|
IN6ADDR_LOOPBACK_INIT:TIn6Addr = (u6_addr8: (0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1));
|
|
NoAddress: in_addr = (s_addr:0);
|
|
NoNet: in_addr = (s_addr:0);
|
|
NoAddress6: in6_addr = (u6_addr16:(0,0,0,0,0,0,0,0));
|
|
NoNet6: in6_addr = (u6_addr16:(0,0,0,0,0,0,0,0));
|
Socket error constants
Esock*, EAI_*
EsockEINTR = WSAEINTR;
|
|
EsockEBADF = WSAEBADF;
|
|
EsockEFAULT = WSAEFAULT;
|
|
EsockEINVAL = WSAEINVAL;
|
|
EsockEACCESS = WSAEACCES;
|
|
EsockEMFILE = WSAEMFILE;
|
|
EsockEMSGSIZE = WSAEMSGSIZE;
|
|
EsockENOBUFS = WSAENOBUFS;
|
|
EsockENOTCONN = WSAENOTCONN;
|
|
EsockENOTSOCK = WSAENOTSOCK;
|
|
EsockEPROTONOSUPPORT = WSAEPROTONOSUPPORT;
|
|
EsockEWOULDBLOCK = WSAEWOULDBLOCK;
|
|
EsockADDRINUSE = WSAEADDRINUSE;
|
|
Error codes from getaddrinfo() | |
EAI_AGAIN = GlobalSock.EAI_AGAIN;
|
|
EAI_BADFLAGS = GlobalSock.EAI_BADFLAGS;
|
|
EAI_FAIL = GlobalSock.EAI_FAIL;
|
|
EAI_FAMILY = GlobalSock.EAI_FAMILY;
|
|
EAI_MEMORY = GlobalSock.EAI_MEMORY;
|
|
EAI_NODATA = GlobalSock.EAI_NODATA;
|
|
EAI_NONAME = GlobalSock.EAI_NONAME;
|
|
EAI_SERVICE = GlobalSock.EAI_SERVICE;
|
|
EAI_SOCKTYPE = GlobalSock.EAI_SOCKTYPE;
|
|
EAI_NODATA = GlobalSock.EAI_NODATA;
|
Socket shutdown option constants
SHUT_*
SHUT_RD = SD_RECEIVE;
|
Aliases so we are cross-platform |
SHUT_WR = SD_SEND;
|
|
SHUT_RDWR = SD_BOTH;
|
Socket type constants
SOCK_*
SOCK_STREAM = GlobalSock.SOCK_STREAM;
|
|
SOCK_DGRAM = GlobalSock.SOCK_DGRAM;
|
|
SOCK_RAW = GlobalSock.SOCK_RAW;
|
|
SOCK_RDM = GlobalSock.SOCK_RDM;
|
|
SOCK_SEQPACKET = GlobalSock.SOCK_SEQPACKET;
|
Socket input/output constants
S_IN*
Two constants to determine whether part of socket is for in or output | |
S_IN = 0;
|
|
S_OUT = 1;
|
Address family constants
AF_*
AF_UNSPEC = GlobalSock.AF_UNSPEC;
|
|
AF_UNIX = GlobalSock.AF_UNIX;
|
|
AF_INET = GlobalSock.AF_INET;
|
|
AF_IMPLINK = GlobalSock.AF_IMPLINK;
|
|
AF_PUP = GlobalSock.AF_PUP;
|
|
AF_CHAOS = GlobalSock.AF_CHAOS;
|
|
AF_IPX = GlobalSock.AF_IPX;
|
|
AF_NS = GlobalSock.AF_NS;
|
|
AF_ISO = GlobalSock.AF_ISO;
|
|
AF_OSI = GlobalSock.AF_OSI;
|
|
AF_ECMA = GlobalSock.AF_ECMA;
|
|
AF_DATAKIT = GlobalSock.AF_DATAKIT;
|
|
AF_CCITT = GlobalSock.AF_CCITT;
|
|
AF_SNA = GlobalSock.AF_SNA;
|
|
AF_DECnet = GlobalSock.AF_DECnet;
|
|
AF_DLI = GlobalSock.AF_DLI;
|
|
AF_LAT = GlobalSock.AF_LAT;
|
|
AF_HYLINK = GlobalSock.AF_HYLINK;
|
|
AF_APPLETALK = GlobalSock.AF_APPLETALK;
|
|
AF_NETBIOS = GlobalSock.AF_NETBIOS;
|
|
AF_VOICEVIEW = GlobalSock.AF_VOICEVIEW;
|
|
AF_FIREFOX = GlobalSock.AF_FIREFOX;
|
|
AF_UNKNOWN1 = GlobalSock.AF_UNKNOWN1;
|
|
AF_BAN = GlobalSock.AF_BAN;
|
|
AF_ATM = GlobalSock.AF_ATM;
|
|
AF_INET6 = GlobalSock.AF_INET6;
|
|
AF_CLUSTER = GlobalSock.AF_CLUSTER;
|
|
AF_12844 = GlobalSock.AF_12844;
|
|
AF_IRDA = GlobalSock.AF_IRDA;
|
|
AF_NETDES = GlobalSock.AF_NETDES;
|
|
AF_MAX = GlobalSock.AF_MAX;
|
Protocol family constants
PF_*
PF_UNSPEC = GlobalSock.PF_UNSPEC;
|
|
PF_UNIX = GlobalSock.PF_UNIX;
|
|
PF_INET = GlobalSock.PF_INET;
|
|
PF_IMPLINK = GlobalSock.PF_IMPLINK;
|
|
PF_PUP = GlobalSock.PF_PUP;
|
|
PF_CHAOS = GlobalSock.PF_CHAOS;
|
|
PF_NS = GlobalSock.PF_NS;
|
|
PF_IPX = GlobalSock.PF_IPX;
|
|
PF_ISO = GlobalSock.PF_ISO;
|
|
PF_OSI = GlobalSock.PF_OSI;
|
|
PF_ECMA = GlobalSock.PF_ECMA;
|
|
PF_DATAKIT = GlobalSock.PF_DATAKIT;
|
|
PF_CCITT = GlobalSock.PF_CCITT;
|
|
PF_SNA = GlobalSock.PF_SNA;
|
|
PF_DECnet = GlobalSock.PF_DECnet;
|
|
PF_DLI = GlobalSock.PF_DLI;
|
|
PF_LAT = GlobalSock.PF_LAT;
|
|
PF_HYLINK = GlobalSock.PF_HYLINK;
|
|
PF_APPLETALK = GlobalSock.PF_APPLETALK;
|
|
PF_VOICEVIEW = GlobalSock.PF_VOICEVIEW;
|
|
PF_FIREFOX = GlobalSock.PF_FIREFOX;
|
|
PF_UNKNOWN1 = GlobalSock.PF_UNKNOWN1;
|
|
PF_BAN = GlobalSock.PF_BAN;
|
|
PF_ATM = GlobalSock.PF_ATM;
|
|
PF_INET6 = GlobalSock.PF_INET6;
|
|
PF_CLUSTER = GlobalSock.PF_CLUSTER;
|
|
PF_12844 = GlobalSock.PF_12844;
|
|
PF_IRDA = GlobalSock.PF_IRDA;
|
|
PF_NETDES = GlobalSock.PF_NETDES;
|
|
PF_MAX = GlobalSock.PF_MAX;
|
IP protocol constants
IPPROTO_*
IPPROTO_IP = GlobalSock.IPPROTO_IP;
|
|
IPPROTO_ICMP = GlobalSock.IPPROTO_ICMP;
|
|
IPPROTO_IGMP = GlobalSock.IPPROTO_IGMP;
|
|
IPPROTO_GGP = GlobalSock.IPPROTO_GGP;
|
|
IPPROTO_TCP = GlobalSock.IPPROTO_TCP;
|
|
IPPROTO_EGP = GlobalSock.IPPROTO_EGP;
|
|
IPPROTO_PUP = GlobalSock.IPPROTO_PUP;
|
|
IPPROTO_UDP GlobalSock.IPPROTO_UDP;
|
|
IPPROTO_HMP = GlobalSock.IPPROTO_HMP;
|
|
IPPROTO_IDP = GlobalSock.IPPROTO_IDP;
|
|
IPPROTO_RDP = GlobalSock.IPPROTO_RDP;
|
|
IPPROTO_IPV6 = GlobalSock.IPPROTO_IPV6;
|
|
IPPROTO_ROUTING = GlobalSock.IPPROTO_ROUTING;
|
|
IPPROTO_FRAGMENT = GlobalSock.IPPROTO_FRAGMENT;
|
|
IPPROTO_ICMPV6 = GlobalSock.IPPROTO_ICMPV6;
|
|
IPPROTO_RVD = GlobalSock.IPPROTO_RVD;
|
|
IPPROTO_ND = GlobalSock.IPPROTO_ND;
|
|
IPPROTO_RAW = GlobalSock.IPPROTO_RAW;
|
|
IPPROTO_MAX = GlobalSock.IPPROTO_MAX;
|
IP port constants
IPPORT_*
Port/socket numbers: network standard functions | |
IPPORT_ANY = GlobalSock.IPPORT_ANY;
|
|
IPPORT_ECHO = GlobalSock.IPPORT_ECHO;
|
|
IPPORT_DISCARD = GlobalSock.IPPORT_DISCARD;
|
|
IPPORT_SYSTAT = GlobalSock.IPPORT_SYSTAT;
|
|
IPPORT_DAYTIME = GlobalSock.IPPORT_DAYTIME;
|
|
IPPORT_NETSTAT = GlobalSock.IPPORT_NETSTAT;
|
|
IPPORT_FTP = GlobalSock.IPPORT_FTP;
|
|
IPPORT_TELNET = GlobalSock.IPPORT_TELNET;
|
|
IPPORT_SMTP = GlobalSock.IPPORT_SMTP;
|
|
IPPORT_TIMESERVER = GlobalSock.IPPORT_TIMESERVER;
|
|
IPPORT_NAMESERVER = GlobalSock.IPPORT_NAMESERVER;
|
|
IPPORT_WHOIS = GlobalSock.IPPORT_WHOIS;
|
|
IPPORT_DNS = GlobalSock.IPPORT_DNS;
|
|
IPPORT_MTP= GlobalSock.IPPORT_MTP;
|
|
IPPORT_BOOTPS = GlobalSock.IPPORT_BOOTPS;
|
|
IPPORT_BOOTPC = GlobalSock.IPPORT_BOOTPC;
|
|
Port/socket numbers: host specific functions | |
IPPORT_TFTP = GlobalSock.IPPORT_TFTP;
|
|
IPPORT_RJE = GlobalSock.IPPORT_RJE;
|
|
IPPORT_FINGER = GlobalSock.IPPORT_FINGER;
|
|
IPPORT_TTYLINK = GlobalSock.IPPORT_TTYLINK;
|
|
IPPORT_SUPDUP = GlobalSock.IPPORT_SUPDUP;
|
|
UNIX TCP sockets | |
IPPORT_EXECSERVER = GlobalSock.IPPORT_EXECSERVER;
|
|
IPPORT_LOGINSERVER = GlobalSock.IPPORT_LOGINSERVER;
|
|
IPPORT_CMDSERVER = GlobalSock.IPPORT_CMDSERVER;
|
|
IPPORT_EFSSERVER = GlobalSock.IPPORT_EFSSERVER;
|
|
UNIX UDP sockets | |
IPPORT_BIFFUDP = GlobalSock.IPPORT_BIFFUDP;
|
|
IPPORT_WHOSERVER = GlobalSock.IPPORT_WHOSERVER;
|
|
IPPORT_ROUTESERVER = GlobalSock.IPPORT_ROUTESERVER;
|
|
Ports < IPPORT_RESERVED are reserved for privileged processes (e.g. root) | |
IPPORT_RESERVED = GlobalSock.IPPORT_RESERVED;
|
IP option constants
IP_*
Options for use with [gs]etsockopt at the IP level | |
IP_OPTIONS = GlobalSock.IP_OPTIONS;
|
|
IP_MULTICAST_IF = GlobalSock.IP_MULTICAST_IF;
|
|
IP_MULTICAST_TTL = GlobalSock.IP_MULTICAST_TTL;
|
|
IP_MULTICAST_LOOP = GlobalSock.IP_MULTICAST_LOOP;
|
|
IP_ADD_MEMBERSHIP = GlobalSock.IP_ADD_MEMBERSHIP;
|
|
IP_DROP_MEMBERSHIP = GlobalSock.IP_DROP_MEMBERSHIP;
|
|
IP_TTL = GlobalSock.IP_TTL;
|
|
IP_TOS = GlobalSock.IP_TOS;
|
|
IP_DONTFRAGMENT = GlobalSock.IP_DONTFRAGMENT;
|
|
IP_HDRINCL = GlobalSock.IP_HDRINCL;
|
Socket option constants
SO_*
Option flags per-socket | |
SO_DEBUG = GlobalSock.SO_DEBUG;
|
|
SO_ACCEPTCONN = GlobalSock.SO_ACCEPTCONN;
|
|
SO_REUSEADDR = GlobalSock.SO_REUSEADDR;
|
|
SO_KEEPALIVE = GlobalSock.SO_KEEPALIVE;
|
|
SO_DONTROUTE = GlobalSock.SO_DONTROUTE;
|
|
SO_BROADCAST = GlobalSock.SO_BROADCAST;
|
|
SO_USELOOPBACK = GlobalSock.SO_USELOOPBACK;
|
|
SO_LINGER = GlobalSock.SO_LINGER;
|
|
SO_OOBINLINE = GlobalSock.SO_OOBINLINE;
|
|
SO_DONTLINGER = GlobalSock.SO_DONTLINGER;
|
|
Additional options | |
SO_SNDBUF = GlobalSock.SO_SNDBUF;
|
|
SO_RCVBUF = GlobalSock.SO_RCVBUF;
|
|
SO_SNDLOWAT = GlobalSock.SO_SNDLOWAT;
|
|
SO_RCVLOWAT = GlobalSock.SO_RCVLOWAT;
|
|
SO_SNDTIMEO = GlobalSock.SO_SNDTIMEO;
|
|
SO_RCVTIMEO = GlobalSock.SO_RCVTIMEO;
|
|
SO_ERROR = GlobalSock.SO_ERROR;
|
|
SO_TYPE = GlobalSock.SO_TYPE;
|
|
SO_CONNTIMEO = GlobalSock.SO_CONNTIMEO;
|
|
Options for connect and disconnect data and options. Used only by non-TCP/IP transports such as DECNet, OSI TP4, etc. | |
SO_CONNDATA = GlobalSock.SO_CONNDATA;
|
|
SO_CONNOPT = GlobalSock.SO_CONNOPT;
|
|
SO_DISCDATA = GlobalSock.SO_DISCDATA;
|
|
SO_DISCOPT = GlobalSock.SO_DISCOPT;
|
|
SO_CONNDATALEN = GlobalSock.SO_CONNDATALEN;
|
|
SO_CONNOPTLEN = GlobalSock.SO_CONNOPTLEN;
|
|
SO_DISCDATALEN = GlobalSock.SO_DISCDATALEN;
|
|
SO_DISCOPTLEN = GlobalSock.SO_DISCOPTLEN;
|
|
Options for opening sockets for synchronous access | |
SO_OPENTYPE = GlobalSock.SO_OPENTYPE;
|
|
SO_SYNCHRONOUS_ALERT = GlobalSock.SO_SYNCHRONOUS_ALERT;
|
|
SO_SYNCHRONOUS_NONALERT = GlobalSock.SO_SYNCHRONOUS_NONALERT;
|
|
Other NT-specific options | |
SO_MAXDG = GlobalSock.SO_MAXDG;
|
|
SO_MAXPATHDG = GlobalSock.SO_MAXPATHDG;
|
|
SO_UPDATE_ACCEPT_CONTEXT = GlobalSock.SO_UPDATE_ACCEPT_CONTEXT;
|
|
SO_CONNECT_TIME = GlobalSock.SO_CONNECT_TIME;
|
TCP option constants
TCP_*
TCP_NODELAY = GlobalSock.TCP_NODELAY;
|
|
TCP_MAXSEG = GlobalSock.TCP_MAXSEG;
|
|
TCP_NOPUSH = GlobalSock.TCP_NOPUSH;
|
|
TCP_NOOPT = GlobalSock.TCP_NOOPT;
|
|
TCP_BSDURGENT = GlobalSock.TCP_BSDURGENT;
|
|
TCP_WSCALE = GlobalSock.TCP_WSCALE;
|
|
TCP_NOSACK = GlobalSock.TCP_NOSACK;
|
UDP option constants
UDP_*
UDP_NOCHECKSUM = GlobalSock.UDP_NOCHECKSUM;
|
Message flag constants
MSG_*
MSG_OOB = GlobalSock.MSG_OOB;
|
|
MSG_PEEK = GlobalSock.MSG_PEEK;
|
|
MSG_DONTROUTE = GlobalSock.MSG_DONTROUTE;
|
|
MSG_INTERRUPT = GlobalSock.MSG_INTERRUPT;
|
|
MSG_PARTIAL = GlobalSock.MSG_PARTIAL;
|
Address info flag constants
AI_*
Flags used in "hints" argument to getaddrinfo() | |
Note: Under Linux these values may be different | |
AI_PASSIVE = GlobalSock.AI_PASSIVE;
|
|
AI_CANONNAME = GlobalSock.AI_CANONNAME;
|
|
AI_NUMERICHOST = GlobalSock.AI_NUMERICHOST;
|
|
AI_NUMERICSERV = GlobalSock.AI_NUMERICSERV;
|
|
AI_ALL = GlobalSock.AI_ALL;
|
|
AI_ADDRCONFIG = GlobalSock.AI_ADDRCONFIG;
|
|
AI_V4MAPPED = GlobalSock.AI_V4MAPPED;
|
|
AI_NON_AUTHORITATIVE = GlobalSock.AI_NON_AUTHORITATIVE;
|
|
AI_SECURE = GlobalSock.AI_SECURE;
|
|
AI_RETURN_PREFERRED_NAMES = GlobalSock.AI_RETURN_PREFERRED_NAMES;
|
|
AI_FQDN = GlobalSock.AI_FQDN;
|
|
AI_FILESERVER = GlobalSock.AI_FILESERVER;
|
Name info flag constants
NI_*
Flags for getnameinfo() | |
NI_NOFQDN = GlobalSock.NI_NOFQDN;
|
|
NI_NUMERICHOST = GlobalSock.NI_NUMERICHOST;
|
|
NI_NAMEREQD = GlobalSock.NI_NAMEREQD;
|
|
NI_NUMERICSERV = GlobalSock.NI_NUMERICSERV;
|
|
NI_DGRAM = GlobalSock.NI_DGRAM;
|
|
NI_MAXHOST = GlobalSock.NI_MAXHOST;
|
|
NI_MAXSERV = GlobalSock.NI_MAXSERV;
|
Type definitions
To be documented
Public variables
To be documented
Function declarations
Initialization functions
procedure SocketsInit;
Description: To be documented
Note | None documented |
---|
function SocketsStart:LongWord;
Description: To be documented
Note | None documented |
---|
function SocketsStop:LongWord;
Description: To be documented
Note | None documented |
---|
procedure SocketsAsyncStart(Data:Pointer);
Description: To be documented
Note | None documented |
---|
Sockets functions
function SocketError: cint;
Description: To be documented
Note | None documented |
---|
function Socket(Domain,SocketType,Protocol:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function Send(Sock:Longint; const Buf; BufLen,Flags:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function SendTo(Sock:Longint; const Buf; BufLen,Flags:Longint; var Addr; AddrLen : Longint):Longint;
Description: To be documented
Note | None documented |
---|
function Recv(Sock:Longint; var Buf; BufLen,Flags:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function RecvFrom(Sock : Longint; var Buf; Buflen,Flags : Longint; var Addr; var AddrLen : longint) : longint;
Description: To be documented
Note | None documented |
---|
function Connect(Sock:Longint; const Addr; Addrlen:Longint):Boolean;
Description: To be documented
Note | None documented |
---|
function Shutdown(Sock:Longint; How:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function Bind(Sock:Longint; const Addr; AddrLen:Longint):Boolean;
Description: To be documented
Note | None documented |
---|
function Listen(Sock,MaxConnect:Longint):Boolean;
Description: To be documented
Note | None documented |
---|
function Accept(Sock:Longint; var Addr; var Addrlen:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function GetSocketName(Sock:Longint; var Addr; var Addrlen:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function GetPeerName(Sock:Longint; var Addr; var Addrlen:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function GetSocketOptions(Sock,Level,OptName:Longint; var OptVal; var optlen:longint):Longint;
Description: To be documented
Note | None documented |
---|
function SetSocketOptions(Sock,Level,OptName:Longint; const OptVal; optlen:longint):Longint;
Description: To be documented
Note | None documented |
---|
function SocketPair(Domain,SocketType,Protocol:Longint; var Pair:TSockArray):Longint;
Description: To be documented
Note | None documented |
---|
function CloseSocket(Sock:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function Inet_Addr(cp: PChar): Longint;
Description: To be documented
Note | None documented |
---|
function Inet_Ntoa(inaddr: TInAddr): PChar;
Description: To be documented
Note | As per the Winsock specification, the buffer returned by this function is only guaranteed to be valid until the next Sockets function call is made within the same thread. Therefore, the data should be copied before another Sockets call |
---|
function Inet_Pton(family: Longint; Source: PChar; Dest: Pointer): Longint;
Description: To be documented
Note | None documented |
---|
function Inet_Ntop(family: Longint; Source: Pointer; Dest: PChar; Size: Longint): PChar;
Description: To be documented
Note | None documented |
---|
function GetHostByAddr(addr: Pointer; len, family: Longint): PHostEnt;
Description: To be documented
Note | None documented |
---|
function GetHostByName(name: PChar): PHostEnt;
Description: To be documented
Note | None documented |
---|
function GetHostName(name: PChar; len: Longint): Longint;
Description: To be documented
Note | None documented |
---|
function GetNetByAddr(addr: Pointer; len, Struct: Integer): PNetEnt;
Description: To be documented
Note | None documented |
---|
function GetNetByName(name: PChar): PNetEnt;
Description: To be documented
Note | None documented |
---|
function GetServByPort(port: Longint; proto: PChar): PServEnt;
Description: To be documented
Note | None documented |
---|
function GetServByName(name, proto: PChar): PServEnt;
Description: To be documented
Note | None documented |
---|
function GetProtoByNumber(proto: Longint): PProtoEnt;
Description: To be documented
Note | None documented |
---|
function GetProtoByName(name: PChar): PProtoEnt;
Description: To be documented
Note | None documented |
---|
function GetAddrInfo(HostName, ServName: PChar; Hints: PAddrInfo; var Addr: PAddrInfo): Longint;
Description: To be documented
Note | None documented |
---|
procedure FreeAddrInfo(ai: PAddrInfo);
Description: To be documented
Note | None documented |
---|
function GetNameInfo(sa: PSockAddr; salen: Longint; host: PChar; hostlen: DWORD; serv: PChar; servlen: DWORD; flags: Longint): Longint;
Description: To be documented
Note | None documented |
---|
RTL sockets functions
function fpsocket(domain:cint; xtype:cint; protocol: cint):cint;
Description: To be documented
Note | None documented |
---|
function fpsend(s:cint; msg:pointer; len:size_t; flags:cint):ssize_t;
Description: To be documented
Note | None documented |
---|
function fpsendto(s:cint; msg:pointer; len:size_t; flags:cint; tox :psockaddr; tolen: tsocklen):ssize_t;
Description: To be documented
Note | None documented |
---|
function fprecv(s:cint; buf: pointer; len: size_t; flags: cint):ssize_t;
Description: To be documented
Note | None documented |
---|
function fprecvfrom(s:cint; buf: pointer; len: size_t; flags: cint; from : psockaddr; fromlen : psocklen):ssize_t;
Description: To be documented
Note | None documented |
---|
function fpconnect(s:cint; name : psockaddr; namelen : tsocklen):cint;
Description: To be documented
Note | None documented |
---|
function fpshutdown(s:cint; how:cint):cint;
Description: To be documented
Note | None documented |
---|
function fpbind(s:cint; addrx : psockaddr; addrlen : tsocklen):cint;
Description: To be documented
Note | None documented |
---|
function fplisten(s:cint; backlog : cint):cint;
Description: To be documented
Note | None documented |
---|
function fpaccept(s:cint; addrx : psockaddr; addrlen : psocklen):cint;
Description: To be documented
Note | None documented |
---|
function fpgetsockname(s:cint; name : psockaddr; namelen : psocklen):cint;
Description: To be documented
Note | None documented |
---|
function fpgetpeername(s:cint; name : psockaddr; namelen : psocklen):cint;
Description: To be documented
Note | None documented |
---|
function fpgetsockopt(s:cint; level:cint; optname:cint; optval:pointer; optlen : psocklen):cint;
Description: To be documented
Note | None documented |
---|
function fpsetsockopt(s:cint; level:cint; optname:cint; optval:pointer; optlen :tsocklen):cint;
Description: To be documented
Note | None documented |
---|
function fpsocketpair(d:cint; xtype:cint; protocol:cint; sv:pcint):cint;
Description: To be documented
Note | None documented |
---|
RTL File/Text sockets functions
function fpRead(Handle:LongInt; var BufPtr; Size:DWORD):DWORD;
Description: To be documented
Note | None documented |
---|
function fpWrite(Handle:LongInt; var BufPtr; Size:DWORD):DWORD;
Description: To be documented
Note | None documented |
---|
procedure OpenSock(var F:Text);
Description: To be documented
Note | None documented |
---|
procedure IOSock(var F:Text);
Description: To be documented
Note | None documented |
---|
procedure FlushSock(var F:Text);
Description: To be documented
Note | None documented |
---|
procedure CloseSock(var F:text);
Description: To be documented
Note | None documented |
---|
procedure Sock2Text(Sock:Longint; Var SockIn,SockOut:Text);
Description: Set up two Pascal Text file descriptors for reading and writing
Note | None documented |
---|
function DoAccept(Sock:longint; var addr:TInetSockAddr):longint;
Description: To be documented
Note | None documented |
---|
function Accept(Sock:longint; var addr:TInetSockAddr; var SockIn,SockOut:File):Boolean;
Description: To be documented
Note | None documented |
---|
function Accept(Sock:longint; var addr:TInetSockAddr; var SockIn,SockOut:text):Boolean;
Description: To be documented
Note | None documented |
---|
function DoConnect(Sock:longint; const addr:TInetSockAddr):Boolean;
Description: To be documented
Note | None documented |
---|
function Connect(Sock:longint; const addr:TInetSockAddr; var SockIn,SockOut:text):Boolean;
Description: To be documented
Note | None documented |
---|
function Connect(Sock:longint; const addr:TInetSockAddr; var SockIn,SockOut:file):Boolean;
Description: To be documented
Note | None documented |
---|
procedure Sock2File(Sock:Longint; Var SockIn,SockOut:File);
Description: To be documented
Note | None documented |
---|
Sockets helper functions
procedure SocketsProcessConfig(Data:Pointer);
Description: To be documented
Note | None documented |
---|
procedure SocketsProcessFilter(Data:Pointer);
Description: To be documented
Note | None documented |
---|
procedure SocketsProcessProtocol(Data:Pointer);
Description: To be documented
Note | None documented |
---|
procedure SocketsProcessSocket(Data:Pointer);
Description: To be documented
Note | None documented |
---|
procedure SocketsProcessAuth(Data:Pointer);
Description: To be documented
Note | None documented |
---|
procedure SocketsProcessMonitor(Data:Pointer);
Description: To be documented
Note | None documented |
---|
procedure SocketsProcessTransport(Data:Pointer);
Description: To be documented
Note | None documented |
---|
procedure SocketsProcessAdapter(Data:Pointer);
Description: To be documented
Note | None documented |
---|
procedure SocketsNetworkDeviceAdd(Event:PSocketsDeviceEvent);
Description: To be documented
Note | None documented |
---|
function SocketsNetworkDeviceRemove(Network:PNetworkDevice):LongWord;
Description: To be documented
Note | None documented |
---|
function SocketsNetworkDeviceEnum(Network:PNetworkDevice; Data:Pointer):LongWord;
Description: To be documented
Note | None documented |
---|
function SocketsNetworkDeviceNotify(Device:PDevice; Data:Pointer; Notification:LongWord):LongWord;
Description: To be documented
Note | None documented |
---|
RTL sockets helper functions
function htonl(host:cardinal):cardinal; inline;
Description: To be documented
Note | None documented |
---|
function ntohl(net:cardinal):cardinal; inline;
Description: To be documented
Note | None documented |
---|
function htons(host:word):word; inline;
Description: To be documented
Note | None documented |
---|
function ntohs(net:word):word; inline;
Description: To be documented
Note | None documented |
---|
function NetAddrToStr(Entry:in_addr):AnsiString;
Description: To be documented
Note | None documented |
---|
function HostAddrToStr(Entry:in_addr):AnsiString;
Description: To be documented
Note | None documented |
---|
function StrToHostAddr(IP:AnsiString):in_addr;
Description: To be documented
Note | None documented |
---|
function StrToNetAddr(IP:AnsiString):in_addr;
Description: To be documented
Note | None documented |
---|
function HostToNet(Host:in_addr):in_addr;
Description: To be documented
Note | None documented |
---|
function NetToHost(Net:in_addr):in_addr;
Description: To be documented
Note | None documented |
---|
function HostToNet(Host:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function NetToHost(Net:Longint):Longint;
Description: To be documented
Note | None documented |
---|
function ShortHostToNet(Host:Word):Word;
Description: To be documented
Note | None documented |
---|
function ShortNetToHost(Net:Word):Word;
Description: To be documented
Note | None documented |
---|
function LocalIntToHex(Value:Integer; Digits:LongInt):AnsiString;
Description: To be documented
Note | None documented |
---|
function HostAddrToStr6(Entry:Tin6_addr):AnsiString;
Description: To be documented
Note | None documented |
---|
function StrToHostAddr6(IP:String):Tin6_addr;
Description: To be documented
Note | None documented |
---|
function NetAddrToStr6(Entry:Tin6_addr):AnsiString;
Description: To be documented
Note | None documented |
---|
function StrToNetAddr6(IP:AnsiString):TIn6_Addr;
Description: To be documented
Note | None documented |
---|
Return to Unit Reference