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()