GVL (GVL)¶
- InOut:
- Scope - Name - Type - Initial - Comment - Constant - SOCKET_AF_UNSPEC - INT- 0 - AddressFamily: unspecified - SOCKET_AF_LOCAL - INT- 1 - AddressFamily: local to host (pipes, portals) - SOCKET_AF_UNIX - INT- 1 - AddressFamily: backward compatibility - SOCKET_AF_INET - INT- 2 - AddressFamily: DINTernetwork: UDP, TCP, etc. - SOCKET_AF_IMPLINK - INT- 3 - AddressFamily: arpanet imp addresses - SOCKET_AF_PUP - INT- 4 - AddressFamily: pup protocols: e.g. BSP - SOCKET_AF_CHAOS - INT- 5 - AddressFamily: mit CHAOS protocols - SOCKET_AF_NS - INT- 6 - AddressFamily: XEROX NS protocols - SOCKET_AF_ISO - INT- 7 - AddressFamily: ISO protocols - SOCKET_AF_OSI - INT- 7 - AddressFamily: OSI protocols - SOCKET_AF_ECMA - INT- 8 - AddressFamily: european computer manufacturers - SOCKET_AF_DATAKIT - INT- 9 - AddressFamily: datakit protocols - SOCKET_AF_CCITT - INT- 10 - AddressFamily: CCITT protocols, X.25 etc - SOCKET_AF_SNA - INT- 11 - AddressFamily: IBM SNA - SOCKET_AF_DECnet - INT- 12 - AddressFamily: DECnet - SOCKET_AF_DLI - INT- 13 - AddressFamily: DEC Direct data link DINTerface - SOCKET_AF_LAT - INT- 14 - AddressFamily: LAT - SOCKET_AF_HYLINK - INT- 15 - AddressFamily: NSC Hyperchannel - SOCKET_AF_APPLETALK - INT- 16 - AddressFamily: Apple Talk - SOCKET_AF_ROUTE - INT- 17 - AddressFamily: DINTernal Routing Protocol - SOCKET_AF_LINK - INT- 18 - AddressFamily: Link layer DINTerface - SOCKET_pseudo_AF_XTP - INT- 19 - AddressFamily: eXpress Transfer Protocol (no AF) - SOCKET_AF_COIP - INT- 20 - AddressFamily: connection-oriented IP, aka ST II - SOCKET_AF_CNT - INT- 21 - AddressFamily: Computer Network Technology - SOCKET_pseudo_AF_RTIP - INT- 22 - AddressFamily: Help Identify RTIP packets - SOCKET_AF_IPX - INT- 23 - AddressFamily: Novell DINTernet Protocol - SOCKET_AF_SIP - INT- 24 - AddressFamily: Simple DINTernet Protocol - SOCKET_pseudo_AF_PIP - INT- 25 - AddressFamily: Help Identify PIP packets - SOCKET_AF_MAX - INT- 26 - AddressFamily: Max definition - SOCKET_AF_INET_BSD - INT- 100 - AddressFamily: BSD-specific INET af - SOCKET_AF_INET_STREAMS - INT- 101 - AddressFamily: STREAMS-specific INET af - SOCKET_IPPROTO_IP - DINT- 0 - Protocols: IP level - SOCKET_IPPROTO_ICMP - DINT- 1 - Protocols: control message protocol - SOCKET_IPPROTO_IGMP - DINT- 2 - Protocols: group management protocol - SOCKET_IPPROTO_GGP - DINT- 3 - Protocols: gateway^2 (deprecated) - SOCKET_IPPROTO_TCP - DINT- 6 - Protocols: tcp - SOCKET_IPPROTO_PUP - DINT- 12 - Protocols: pup - SOCKET_IPPROTO_UDP - DINT- 17 - Protocols: user datagram protocol - SOCKET_IPPROTO_IDP - DINT- 22 - Protocols: xns idp - SOCKET_IPPROTO_ND - DINT- 77 - Protocols: UNOFFICIAL net disk proto - SOCKET_IPPROTO_TLS - DINT- 254 - Protocols: UNOFFICIAL TCP / TLS protocol - SOCKET_IPPROTO_RAW - DINT- 255 - Protocols: raw IP packet - SOCKET_IPPROTO_MAX - DINT- 256 - Protocols: Max definition - SOCKET_SOL - DINT- 16#FFFF - Level number for SysSockGetOption/SysSockSetOption: Apply to socket itself in the same numbering space as IPPROTO_TCP, IPPROTO_IP, etc. - SOCKET_DEVICE_SPECIFIC - DINT- ANY_TO_DINT(16#80000000) - Offset for the level number for non-portable device specific socket options. device specific level = socket option level + 16#80000000 Behavior of the SysSockGetOption/SysSockSetOption functions: If bit 31 (zero-based) is set, then remove it and pass the level without a mapping. Examples: device specific level for SOCKET_SOL = 16#8000FFFF device specific level for SOCKET_IPPROTO_IP = 16#80000000 device specific level for IPPROTO_TCP = 16#80000006 - SOCKET_SO_DEBUG - DINT- 16#1 - Socket options for SysSockGetOption()/SysSockSetOption() Socket option: turn on debugging info recording - SOCKET_SO_ACCEPTCONN - DINT- 16#2 - Socket option: socket has had listen() - SOCKET_SO_REUSEADDR - DINT- 16#4 - Socket option: allow local address reuse - SOCKET_SO_KEEPALIVE - DINT- 16#8 - Socket option: keep connections alive. See RTS_SOCKET_SO_VALUE_TCP_KEEPALIVE for extended parameters for this option. - SOCKET_SO_DONTROUTE - DINT- 16#10 - Socket option: just use interface addresses - SOCKET_SO_BROADCAST - DINT- 16#20 - Socket option: permit sending (and on some platforms also receiving) of broadcast msgs - SOCKET_SO_USELOOPBACK - DINT- 16#40 - Socket option: bypass hardware when possible - SOCKET_SO_LINGER - DINT- 16#80 - Socket option: linger on close if data present. See RTS_SOCKET_SO_VALUE_LINGER for extended parameters for this option. - SOCKET_SO_OOBINLINE - DINT- 16#100 - Socket option: leave received OOB data in line - SOCKET_SO_REUSEPORT - DINT- 16#200 - Socket option: allow local address & port reuse - SOCKET_SO_SNDBUF - DINT- 16#1001 - Socket option: send buffer size - SOCKET_SO_RCVBUF - DINT- 16#1002 - Socket option: receive buffer size - SOCKET_SO_SNDLOWAT - DINT- 16#1003 - Socket option: send low-water mark - SOCKET_SO_RCVLOWAT - DINT- 16#1004 - Socket option: receive low-water mark - SOCKET_SO_SNDTIMEO - DINT- 16#1005 - Socket option: send timeout - SOCKET_SO_RCVTIMEO - DINT- 16#1006 - Socket option: receive timeout - SOCKET_SO_ERROR - DINT- 16#1007 - Socket option: get error status and clear - SOCKET_SO_TYPE - DINT- 16#1008 - Socket option: get socket type - SOCKET_SO_PROTOTYPE - DINT- 16#1009 - Socket option: get/set protocol type - SOCKET_SO_HOSTNAME - DINT- 16#2001 - Socket option: get/set hostname for tls connections. Needed for SNI (Server Name Indication) - SOCKET_SO_STARTTLS - DINT- 16#3001 - Socket option: upgrade standard socket to TLS. Works only on sockets with socket type SYSSOCK_TYPE_STARTTLS! - SOCKET_TCP_NODELAY - DINT- 16#1 - Socket TCP options for SysSockGetOption()/SysSockSetOption() Only to be used for SOCKET_IPPROTO_TCP. TCPIP option: don’t delay send to coalesce packets - SOCKET_TCP_MAXSEG - DINT- 16#2 - TCPIP option: set maximum segment size - SOCKET_IP_TOS - DINT- 16#1 - IP options for SysSockGetOption()/SysSockSetOption() Only to be used for SOCKET_IPPROTO_IP. Socket option: Specify the DSCP (ToS successor) field of the IP frame - SOCKET_IP_MULTICAST_IF - DINT- 16#9 - IP option: IP multicast interface - SOCKET_SO_MULTICAST_IF - DINT- 16#9 - Socket option: IP multicast interface - obsolete only for backward compatibility. - SOCKET_IP_MULTICAST_TTL - DINT- 16#A - IP option: IP multicast TTL (hop limit) - SOCKET_IP_MULTICAST_LOOP - DINT- 16#B - IP option: IP multicast loopback - SOCKET_IP_ADD_MEMBERSHIP - DINT- 16#C - IP option: Add an IP group membership. See RTS_SOCKET_SO_VALUE_IP_MREQ for extended parameters for this option. - SOCKET_IP_DROP_MEMBERSHIP - DINT- 16#D - IP option: Drop an IP group membership. See RTS_SOCKET_SO_VALUE_IP_MREQ for extended parameters for this option. - SOCKET_IP_DONTFRAGMENT - DINT- 16#E - IP option: Indicates that data should not be fragmented regardless of the local MTU. Valid only for message oriented protocols (UDP etc). - SOCKET_IP_PKTINFO - DINT- 16#13 - IP option: Pass an IP_PKTINFO ancillary message that contains a pktinfo structure that supplies some information about the incoming packet. This works only for datagram oriented sockets. The argument is a flag that tells the socket whether the IP_PKTINFO message should be passed or not. - SOCKET_STREAM - DINT- 1 - Socket types: stream socket - SOCKET_DGRAM - DINT- 2 - Socket types: datagram socket - SOCKET_RAW - DINT- 3 - Socket types: raw-protocol interface - SOCKET_RDM - DINT- 4 - Socket types: reliably-delivered message - SOCKET_SEQPACKET - DINT- 5 - Socket types: sequenced packet stream - SOCKET_INADDR_ANY - UDINT- 16#0 - Inet address definition: Any address - SOCKET_INADDR_LOOPBACK - UDINT- 16#7F000001 - Inet address definition: Loopback device - SOCKET_INADDR_BROADCAST - UDINT- 16#FFFFFFFF - Inet address definition: Broadcast - SOCKET_INADDR_NONE - UDINT- 16#FFFFFFFF - Inet address definition: Unspecified - SOCKET_FIONREAD - DINT- 1 - Ioctl commands: get num chars available to read - SOCKET_FIONBIO - DINT- 2 - Ioctl commands: set to non-blocking - SOCKET_MSG_NONE - DINT- 16#0 - Message flags: No flag - SOCKET_MSG_OOB - DINT- 16#1 - Message flags: process out-of-band data - SOCKET_MSG_PEEK - DINT- 16#2 - Message flags: peek at incoming message - SOCKET_MSG_DONTROUTE - DINT- 16#4 - Message flags: send without using routing tables - SOCKET_MSG_DONTWAIT - DINT- 16#8 - Message flags: send TCP frame directly without blocking - SOCKET_MSG_BCAST - DINT- 16#400 - Message flags: Indicates that the packet was received as broadcast. - SOCKET_MSG_MCAST - DINT- 16#800 - Message flags: Indicates that the packet was received as multicast. - SOCKET_SD_RECEIVE - DINT- 16#0 - Shutdown flags: Receive is no longer allowed - SOCKET_SD_SEND - DINT- 16#1 - Shutdown flags: Send is no longer allowed - SOCKET_SD_BOTH - DINT- 16#2 - Shutdown flags: Send and receive is no longer allowed - SOCKET_FD_SETSIZE - DINT- 64 - SysSockSelect() descriptor - MAX_SOCKET_FD_SETSIZE - DINT- 63 - SysSockSelect() descriptor - ADAPTER_INFO_MAC_ADDR_LENGTH - INT- 6 - Definitions for adapter information: BYTE length of MAC address; fix value - ADAPTER_INFO_NAME_LEN - INT- 255 - max. length of adapter name - ADAPTER_INFO_DESC_LEN - INT- 255 - max. length of adapter description - ADAPTER_INFO_DNSSUFFIX_LEN - INT- 255 - max. length of adapter description - SOCK_AIT_ETHERNET - WORD- 1 - Definitions for adapter information: Adapter type: Generic ethernet adapter - default, if nothing else matches - SOCK_AIT_LOCALHOST - WORD- 2 - Adapter type: Localhost adapter - SOCK_AIT_PPP - WORD- 3 - Adapter type: PPP adapter - broadcasts are not supported - SOCK_AIT_WIRELESS - WORD- 4 - Adapter type: Wireless (e. g. WLAN) network adapter - SOCK_AIF_NONE - DWORD- 16#0 - Definitions for adapter information: Adapter information flags: No flag set - SOCK_AIF_INACTIVE - DWORD- 16#1 - Adapter information flags: Interface not ready for ip communication (no driver, no ip address, no link, …) - SOCK_AIF_ALIAS_IP - DWORD- 16#2 - Adapter information flags: Further ip (aka alias address) of adapter - SOCK_AIF_DYNAMIC_IP - DWORD- 16#4 - Adapter information flags: Dynamic ip address, provided by DHCP, BOOTP, etc. Cannot be changed by SysSockSetIpAddressAndNetMask() - SOCK_AIF_FIX_IP - DWORD- 16#8 - Adapter information flags: Fix (e. g. hard coded) ip address. Cannot be changed by SysSockSetIpAddressAndNetMask() - SOCK_AIF_IP_CHANGE_ALLOWED - DWORD- 16#10 - Adapter information flags: Adapter is white listed to allow address changes. If non of the flags SOCK_AIF_DYNAMIC_IP or SOCK_AIF_FIX_IP is set, the ip address can be likely changed by SysSockSetIpAddressAndNetMask() - SOCK_AIF_GATEWAY_INFO_VALID - DWORD- 16#20 - Adapter information flags: DefaultGateway address is valid. Is not set, if no Gateway information is provided by the system. - SOCK_AIF_DNS_INFO_VALID - DWORD- 16#40 - Adapter information flags: DNS address and suffix is valid. Is not set, if no DNS information is provided by the system. - SOCK_AIF_DHCP_INFO_VALID - DWORD- 16#80 - Adapter information flags: DHCP address is valid. Is not set, if no DHCP information is provided by the system. - SOCK_AIF_INFO_VALID - DWORD- 16#8000 - Adapter information flags: Adapter is valid - only valid adapters are returned by SysSockGetFirstAdapterInfo() or SysSockGetNextAdapterInfo() 
