module Socket::Constants
Socket::Constants provides socket-related constants.  All possible socket constants are listed in the documentation but they may not all be present on your platform.
If the underlying platform doesn’t define a constant the corresponding Ruby constant is not defined.
Constants
- AF_APPLETALK
 AppleTalk protocol
- AF_ATM
 Asynchronous Transfer Mode
- AF_AX25
 AX.25 protocol
- AF_CCITT
 CCITT (now ITU-T) protocols
- AF_CHAOS
 MIT CHAOS protocols
- AF_CNT
 Computer Network Technology
- AF_COIP
 Connection-oriented IP
- AF_DATAKIT
 Datakit protocol
- AF_DEC
 DECnet protocol
- AF_DLI
 DEC Direct Data Link Interface protocol
- AF_E164
 CCITT (ITU-T) E.164 recommendation
- AF_ECMA
 European Computer Manufacturers protocols
- AF_HYLINK
 NSC Hyperchannel protocol
- AF_IMPLINK
 ARPANET IMP protocol
- AF_INET
 IPv4 protocol
- AF_INET6
 IPv6 protocol
- AF_IPX
 IPX protocol
- AF_ISDN
 Integrated Services Digital Network
- AF_ISO
 ISO Open Systems Interconnection protocols
- AF_LAT
 Local Area Transport protocol
- AF_LINK
 Link layer interface
- AF_LOCAL
 Host-internal protocols
- AF_MAX
 Maximum address family for this platform
- AF_NATM
 Native ATM access
- AF_NDRV
 Network driver raw access
- AF_NETBIOS
 NetBIOS
- AF_NETGRAPH
 Netgraph sockets
- AF_NS
 XEROX NS protocols
- AF_OSI
 ISO Open Systems Interconnection protocols
- AF_PACKET
 Direct link-layer access
- AF_PPP
 Point-to-Point Protocol
- AF_PUP
 PARC Universal Packet protocol
- AF_ROUTE
 Internal routing protocol
- AF_SIP
 Simple Internet Protocol
- AF_SNA
 IBM SNA protocol
- AF_SYSTEM
 - AF_UNIX
 UNIX sockets
- AF_UNSPEC
 Unspecified protocol, any supported address family
- AI_ADDRCONFIG
 Accept only if any address is assigned
- AI_ALL
 Allow all addresses
- AI_CANONNAME
 Fill in the canonical name
- AI_DEFAULT
 Default flags for getaddrinfo
- AI_MASK
 Valid flag mask for getaddrinfo (not for application use)
- AI_NUMERICHOST
 Prevent host name resolution
- AI_NUMERICSERV
 Prevent service name resolution
- AI_PASSIVE
 Get address to use with bind()
- AI_V4MAPPED
 Accept IPv4-mapped IPv6 addresses
- AI_V4MAPPED_CFG
 Accept IPv4 mapped addresses if the kernel supports it
- EAI_ADDRFAMILY
 Address family for hostname not supported
- EAI_AGAIN
 Temporary failure in name resolution
- EAI_BADFLAGS
 Invalid flags
- EAI_BADHINTS
 Invalid value for hints
- EAI_FAIL
 Non-recoverable failure in name resolution
- EAI_FAMILY
 Address family not supported
- EAI_MAX
 Maximum error code from getaddrinfo
- EAI_MEMORY
 Memory allocation failure
- EAI_NODATA
 No address associated with hostname
- EAI_NONAME
 Hostname nor servname, or not known
- EAI_OVERFLOW
 Argument buffer overflow
- EAI_PROTOCOL
 Resolved protocol is unknown
- EAI_SERVICE
 Servname not supported for socket type
- EAI_SOCKTYPE
 Sockettype not supported- EAI_SYSTEM
 System error returned in errno
- IFF_802_1Q_VLAN
 802.1Q VLAN device
- IFF_ALLMULTI
 receive all multicast packets
- IFF_ALTPHYS
 use alternate physical connection
- IFF_AUTOMEDIA
 auto media select active
- IFF_BONDING
 bonding master or slave
- IFF_BRIDGE_PORT
 device used as bridge port
- IFF_BROADCAST
 broadcast address valid
- IFF_CANTCHANGE
 flags not changeable
- IFF_CANTCONFIG
 unconfigurable using ioctl(2)
- IFF_DEBUG
 turn on debugging
- IFF_DISABLE_NETPOLL
 disable netpoll at run-time
- IFF_DONT_BRIDGE
 disallow bridging this ether dev
- IFF_DORMANT
 driver signals dormant
- IFF_DRV_OACTIVE
 tx hardware queue is full
- IFF_DRV_RUNNING
 resources allocated
- IFF_DYING
 interface is winding down
- IFF_DYNAMIC
 dialup device with changing addresses
- IFF_EBRIDGE
 ethernet bridging device
- IFF_ECHO
 echo sent packets
- IFF_ISATAP
 ISATAP interface (RFC4214)
- IFF_LINK0
 per link layer defined bit 0
- IFF_LINK1
 per link layer defined bit 1
- IFF_LINK2
 per link layer defined bit 2
- IFF_LIVE_ADDR_CHANGE
 hardware address change when it’s running
- IFF_LOOPBACK
 loopback net
- IFF_LOWER_UP
 driver signals L1 up
- IFF_MACVLAN_PORT
 device used as macvlan port
- IFF_MASTER
 master of a load balancer
- IFF_MASTER_8023AD
 bonding master, 802.3ad.
- IFF_MASTER_ALB
 bonding master, balance-alb.
- IFF_MASTER_ARPMON
 bonding master, ARP mon in use
- IFF_MONITOR
 user-requested monitor mode
- IFF_MULTICAST
 supports multicast
- IFF_NOARP
 no address resolution protocol
- IFF_NOTRAILERS
 avoid use of trailers
- IFF_OACTIVE
 transmission in progress
- IFF_OVS_DATAPATH
 device used as Open vSwitch datapath port
- IFF_POINTOPOINT
 point-to-point link
- IFF_PORTSEL
 can set media type
- IFF_PPROMISC
 user-requested promisc mode
- IFF_PROMISC
 receive all packets
- IFF_RENAMING
 interface is being renamed
- IFF_ROUTE
 routing entry installed
- IFF_RUNNING
 resources allocated
- IFF_SIMPLEX
 can’t hear own transmissions
- IFF_SLAVE
 slave of a load balancer
- IFF_SLAVE_INACTIVE
 bonding slave not the curr. active
- IFF_SLAVE_NEEDARP
 need ARPs for validation
- IFF_SMART
 interface manages own routes
- IFF_STATICARP
 static ARP
- IFF_SUPP_NOFCS
 sending custom FCS
- IFF_TEAM_PORT
 used as team port
- IFF_TX_SKB_SHARING
 sharing skbs on transmit
- IFF_UNICAST_FLT
 unicast filtering
- IFF_UP
 interface is up
- IFF_VOLATILE
 volatile flags
- IFF_WAN_HDLC
 WAN HDLC device
- IFF_XMIT_DST_RELEASE
 dev_hard_start_xmit() is allowed to release skb->dst
- IFNAMSIZ
 Maximum interface name size
- IF_NAMESIZE
 Maximum interface name size
- INADDR_ALLHOSTS_GROUP
 Multicast group for all systems on this subset
- INADDR_ANY
 A socket bound to
INADDR_ANYreceives packets from all interfaces and sends from the default IP address- INADDR_BROADCAST
 The network broadcast address
- INADDR_LOOPBACK
 The loopback address
- INADDR_MAX_LOCAL_GROUP
 The last local network multicast group
- INADDR_NONE
 A bitmask for matching no valid IP address
- INADDR_UNSPEC_GROUP
 The reserved multicast group
- INET6_ADDRSTRLEN
 Maximum length of an IPv6 address string
- INET_ADDRSTRLEN
 Maximum length of an IPv4 address string
- IPPORT_RESERVED
 Default minimum address for bind or connect
- IPPORT_USERRESERVED
 Default maximum address for bind or connect
- IPPROTO_AH
 IP6 auth header
- IPPROTO_BIP
 - IPPROTO_DSTOPTS
 IP6 destination option
- IPPROTO_EGP
 Exterior Gateway Protocol
- IPPROTO_EON
 ISO cnlp
- IPPROTO_ESP
 IP6 Encapsulated Security Payload
- IPPROTO_FRAGMENT
 IP6 fragmentation header
- IPPROTO_GGP
 Gateway to Gateway Protocol
- IPPROTO_HELLO
 “hello” routing protocol
- IPPROTO_HOPOPTS
 IP6 hop-by-hop options
- IPPROTO_ICMP
 Control message protocol
- IPPROTO_ICMPV6
 ICMP6
- IPPROTO_IDP
 XNS IDP
- IPPROTO_IGMP
 Group Management Protocol
- IPPROTO_IP
 Dummy protocol for IP
- IPPROTO_IPV6
 IP6 header
- IPPROTO_MAX
 Maximum IPPROTO constant
- IPPROTO_ND
 Sun net disk protocol
- IPPROTO_NONE
 IP6 no next header
- IPPROTO_PUP
 PARC Universal Packet protocol
- IPPROTO_RAW
 Raw IP packet
- IPPROTO_ROUTING
 IP6 routing header
- IPPROTO_TCP
 TCP
- IPPROTO_TP
 ISO transport protocol class 4
- IPPROTO_UDP
 UDP
- IPPROTO_XTP
 Xpress Transport Protocol
- IPV6_CHECKSUM
 Checksum offset for raw sockets
- IPV6_DONTFRAG
 Don’t fragment packets
- IPV6_DSTOPTS
 Destination option
- IPV6_HOPLIMIT
 Hop limit
- IPV6_HOPOPTS
 Hop-by-hop option
- IPV6_JOIN_GROUP
 Join a group membership
- IPV6_LEAVE_GROUP
 Leave a group membership
- IPV6_MULTICAST_HOPS
 IP6 multicast hops
- IPV6_MULTICAST_IF
 IP6 multicast interface
- IPV6_MULTICAST_LOOP
 IP6 multicast loopback
- IPV6_NEXTHOP
 Next hop address
- IPV6_PATHMTU
 Retrieve current path MTU
- IPV6_PKTINFO
 Receive packet information with datagram
- IPV6_RECVDSTOPTS
 Receive all IP6 options for response
- IPV6_RECVHOPLIMIT
 Receive hop limit with datagram
- IPV6_RECVHOPOPTS
 Receive hop-by-hop options
- IPV6_RECVPATHMTU
 Receive current path MTU with datagram
- IPV6_RECVPKTINFO
 Receive destination IP address and incoming interface
- IPV6_RECVRTHDR
 Receive routing header
- IPV6_RECVTCLASS
 Receive traffic class
- IPV6_RTHDR
 Allows removal of sticky routing headers
- IPV6_RTHDRDSTOPTS
 Allows removal of sticky destination options header
- IPV6_RTHDR_TYPE_0
 Routing header type 0
- IPV6_TCLASS
 Specify the traffic class
- IPV6_UNICAST_HOPS
 IP6 unicast hops
- IPV6_USE_MIN_MTU
 Use the minimum MTU size
- IPV6_V6ONLY
 Only bind IPv6 with a wildcard bind
- IPX_TYPE
 - IP_ADD_MEMBERSHIP
 Add a multicast group membership
- IP_ADD_SOURCE_MEMBERSHIP
 Add a multicast group membership
- IP_BLOCK_SOURCE
 Block IPv4 multicast packets with a give source address
- IP_DEFAULT_MULTICAST_LOOP
 Default multicast loopback
- IP_DEFAULT_MULTICAST_TTL
 Default multicast TTL
- IP_DONTFRAG
 Don’t fragment packets
- IP_DROP_MEMBERSHIP
 Drop a multicast group membership
- IP_DROP_SOURCE_MEMBERSHIP
 Drop a multicast group membership
- IP_FREEBIND
 Allow binding to nonexistent IP addresses
- IP_HDRINCL
 Header is included with data
- IP_IPSEC_POLICY
 IPsec security policy
- IP_MAX_MEMBERSHIPS
 Maximum number multicast groups a socket can join
- IP_MINTTL
 Minimum TTL allowed for received packets
- IP_MSFILTER
 Multicast source filtering
- IP_MTU
 The Maximum Transmission Unit of the socket
- IP_MTU_DISCOVER
 Path MTU discovery
- IP_MULTICAST_IF
 IP multicast interface
- IP_MULTICAST_LOOP
 IP multicast loopback
- IP_MULTICAST_TTL
 IP multicast TTL
- IP_ONESBCAST
 Force outgoing broadcast datagrams to have the undirected broadcast address
- IP_OPTIONS
 IP options to be included in packets
- IP_PASSSEC
 Retrieve security context with datagram
- IP_PKTINFO
 Receive packet information with datagrams
- IP_PKTOPTIONS
 Receive packet options with datagrams
- IP_PMTUDISC_DO
 Always send DF frames
- IP_PMTUDISC_DONT
 Never send DF frames
- IP_PMTUDISC_WANT
 Use per-route hints
- IP_PORTRANGE
 Set the port range for sockets with unspecified port numbers
- IP_RECVDSTADDR
 Receive IP destination address with datagram
- IP_RECVERR
 Enable extended reliable error message passing
- IP_RECVIF
 Receive interface information with datagrams
- IP_RECVOPTS
 Receive all IP options with datagram
- IP_RECVRETOPTS
 Receive all IP options for response
- IP_RECVSLLA
 Receive link-layer address with datagrams
- IP_RECVTOS
 Receive TOS with incoming packets
- IP_RECVTTL
 Receive IP TTL with datagrams
- IP_RETOPTS
 IP options to be included in datagrams
- IP_ROUTER_ALERT
 Notify transit routers to more closely examine the contents of an IP packet
- IP_SENDSRCADDR
 Source address for outgoing UDP datagrams
- IP_TOS
 IP type-of-service
- IP_TRANSPARENT
 Transparent proxy
- IP_TTL
 IP time-to-live
- IP_UNBLOCK_SOURCE
 Unblock IPv4 multicast packets with a give source address
- IP_XFRM_POLICY
 - LOCAL_CONNWAIT
 Connect blocks until accepted
- LOCAL_CREDS
 Pass credentials to receiver
- LOCAL_PEERCRED
 Retrieve peer credentials
- MCAST_BLOCK_SOURCE
 Block multicast packets from this source
- MCAST_EXCLUDE
 Exclusive multicast source filter
- MCAST_INCLUDE
 Inclusive multicast source filter
- MCAST_JOIN_GROUP
 Join a multicast group
- MCAST_JOIN_SOURCE_GROUP
 Join a multicast source group
- MCAST_LEAVE_GROUP
 Leave a multicast group
- MCAST_LEAVE_SOURCE_GROUP
 Leave a multicast source group
- MCAST_MSFILTER
 Multicast source filtering
- MCAST_UNBLOCK_SOURCE
 Unblock multicast packets from this source
- MSG_COMPAT
 End of record
- MSG_CONFIRM
 Confirm path validity
- MSG_CTRUNC
 Control data lost before delivery
- MSG_DONTROUTE
 Send without using the routing tables
- MSG_DONTWAIT
 This message should be non-blocking
- MSG_EOF
 Data completes connection
- MSG_EOR
 Data completes record
- MSG_ERRQUEUE
 Fetch message from error queue
- MSG_FASTOPEN
 Reduce step of the handshake process
- MSG_FIN
 - MSG_FLUSH
 Start of a hold sequence. Dumps to so_temp
- MSG_HAVEMORE
 Data ready to be read
- MSG_HOLD
 Hold fragment in so_temp
- MSG_MORE
 Sender will send more
- MSG_NOSIGNAL
 Do not generate SIGPIPE
- MSG_OOB
 Process out-of-band data
- MSG_PEEK
 Peek at incoming message
- MSG_PROXY
 Wait for full request
- MSG_RCVMORE
 Data remains in the current packet
- MSG_RST
 - MSG_SEND
 Send the packet in so_temp
- MSG_SYN
 - MSG_TRUNC
 Data discarded before delivery
- MSG_WAITALL
 Wait for full request or error
- NI_DGRAM
 The service specified is a datagram service (looks up UDP ports)
- NI_MAXHOST
 Maximum length of a hostname
- NI_MAXSERV
 Maximum length of a service name
- NI_NAMEREQD
 A name is required
- NI_NOFQDN
 An FQDN is not required for local hosts, return only the local part
- NI_NUMERICHOST
 Return a numeric address
- NI_NUMERICSERV
 Return the service name as a digit string
- PF_APPLETALK
 AppleTalk protocol
- PF_ATM
 Asynchronous Transfer Mode
- PF_AX25
 AX.25 protocol
- PF_CCITT
 CCITT (now ITU-T) protocols
- PF_CHAOS
 MIT CHAOS protocols
- PF_CNT
 Computer Network Technology
- PF_COIP
 Connection-oriented IP
- PF_DATAKIT
 Datakit protocol
- PF_DEC
 DECnet protocol
- PF_DLI
 DEC Direct Data Link Interface protocol
- PF_ECMA
 European Computer Manufacturers protocols
- PF_HYLINK
 NSC Hyperchannel protocol
- PF_IMPLINK
 ARPANET IMP protocol
- PF_INET
 IPv4 protocol
- PF_INET6
 IPv6 protocol
- PF_IPX
 IPX protocol
- PF_ISDN
 Integrated Services Digital Network
- PF_ISO
 ISO Open Systems Interconnection protocols
- PF_KEY
 - PF_LAT
 Local Area Transport protocol
- PF_LINK
 Link layer interface
- PF_LOCAL
 Host-internal protocols
- PF_MAX
 Maximum address family for this platform
- PF_NATM
 Native ATM access
- PF_NDRV
 Network driver raw access
- PF_NETBIOS
 NetBIOS
- PF_NETGRAPH
 Netgraph sockets
- PF_NS
 XEROX NS protocols
- PF_OSI
 ISO Open Systems Interconnection protocols
- PF_PACKET
 Direct link-layer access
- PF_PIP
 - PF_PPP
 Point-to-Point Protocol
- PF_PUP
 PARC Universal Packet protocol
- PF_ROUTE
 Internal routing protocol
- PF_RTIP
 - PF_SIP
 Simple Internet Protocol
- PF_SNA
 IBM SNA protocol
- PF_SYSTEM
 - PF_UNIX
 UNIX sockets
- PF_UNSPEC
 Unspecified protocol, any supported address family
- PF_XTP
 eXpress Transfer Protocol
- SCM_BINTIME
 Timestamp (bintime)
- SCM_CREDENTIALS
 The sender’s credentials
- SCM_CREDS
 Process credentials
- SCM_RIGHTS
 Access rights
- SCM_TIMESTAMP
 Timestamp (timeval)
- SCM_TIMESTAMPING
 Timestamp (timespec list) (Linux 2.6.30)
- SCM_TIMESTAMPNS
 Timespec (timespec)
- SCM_UCRED
 User credentials
- SCM_WIFI_STATUS
 Wifi status (Linux 3.3)
- SHUT_RD
 Shut down the reading side of the socket
- SHUT_RDWR
 Shut down the both sides of the socket
- SHUT_WR
 Shut down the writing side of the socket
- SOCK_DGRAM
 A datagram socket provides connectionless, unreliable messaging
- SOCK_PACKET
 Device-level packet access
- SOCK_RAW
 A raw socket provides low-level access for direct access or implementing network protocols
- SOCK_RDM
 A reliable datagram socket provides reliable delivery of messages
- SOCK_SEQPACKET
 A sequential packet socket provides sequenced, reliable two-way connection for datagrams
- SOCK_STREAM
 A stream socket provides a sequenced, reliable two-way connection for a byte stream
- SOL_ATALK
 AppleTalk socket options
- SOL_AX25
 AX.25 socket options
- SOL_IP
 IP socket options
- SOL_IPX
 IPX socket options
- SOL_SOCKET
 Socket-level options
- SOL_TCP
 TCP socket options
- SOL_UDP
 UDP socket options
- SOMAXCONN
 Maximum connection requests that may be queued for a socket
- SOPRI_BACKGROUND
 Background socket priority
- SOPRI_INTERACTIVE
 Interactive socket priority
- SOPRI_NORMAL
 Normal socket priority
- SO_ACCEPTCONN
 Sockethas had listen() called on it- SO_ACCEPTFILTER
 There is an accept filter
- SO_ALLZONES
 Bypass zone boundaries
- SO_ATTACH_FILTER
 Attach an accept filter
- SO_BINDTODEVICE
 Only send packets from the given interface
- SO_BINTIME
 Receive timestamp with datagrams (bintime)
- SO_BPF_EXTENSIONS
 Query supported BPF extensions (Linux 3.14)
- SO_BROADCAST
 Permit sending of broadcast messages
- SO_BUSY_POLL
 Set the threshold in microseconds for low latency polling (Linux 3.11)
- SO_DEBUG
 Debug info recording
- SO_DETACH_FILTER
 Detach an accept filter
- SO_DOMAIN
 Domain given for socket() (Linux 2.6.32)
- SO_DONTROUTE
 Use interface addresses
- SO_DONTTRUNC
 Retain unread data
- SO_ERROR
 Get and clear the error status
- SO_GET_FILTER
 Obtain filter set by
SO_ATTACH_FILTER(Linux 3.8)- SO_KEEPALIVE
 Keep connections alive
- SO_LINGER
 Linger on close if data is present
- SO_LOCK_FILTER
 Lock the filter attached to a socket (Linux 3.9)
- SO_MAC_EXEMPT
 Mandatory Access Control exemption for unlabeled peers
- SO_MARK
 Set the mark for mark-based routing (Linux 2.6.25)
- SO_MAX_PACING_RATE
 Cap the rate computed by transport layer. [bytes per second] (Linux 3.13)
- SO_NKE
 Install socket-level Network Kernel Extension
- SO_NOFCS
 Set netns of a socket (Linux 3.4)
- SO_NOSIGPIPE
 Don’t SIGPIPE on EPIPE
- SO_NO_CHECK
 Disable checksums
- SO_NREAD
 Get first packet byte count
- SO_OOBINLINE
 Leave received out-of-band data in-line
- SO_PASSCRED
 Receive
SCM_CREDENTIALSmessages- SO_PASSSEC
 Toggle security context passing (Linux 2.6.18)
- SO_PEEK_OFF
 Set the peek offset (Linux 3.4)
- SO_PEERCRED
 The credentials of the foreign process connected to this socket
- SO_PEERNAME
 Name of the connecting user
- SO_PEERSEC
 Obtain the security credentials (Linux 2.6.2)
- SO_PRIORITY
 The protocol-defined priority for all packets on this socket
- SO_PROTOCOL
 Protocol given for socket() (Linux 2.6.32)
- SO_RCVBUF
 Receive buffer size
- SO_RCVBUFFORCE
 Receive buffer size without rmem_max limit (Linux 2.6.14)
- SO_RCVLOWAT
 Receive low-water mark
- SO_RCVTIMEO
 Receive timeout
- SO_RECVUCRED
 Receive user credentials with datagram
- SO_REUSEADDR
 Allow local address reuse
- SO_REUSEPORT
 Allow local address and port reuse
- SO_RXQ_OVFL
 Toggle cmsg for number of packets dropped (Linux 2.6.33)
- SO_SECURITY_AUTHENTICATION
 - SO_SECURITY_ENCRYPTION_NETWORK
 - SO_SECURITY_ENCRYPTION_TRANSPORT
 - SO_SELECT_ERR_QUEUE
 Make select() detect socket error queue with errorfds (Linux 3.10)
- SO_SNDBUF
 Send buffer size
- SO_SNDBUFFORCE
 Send buffer size without wmem_max limit (Linux 2.6.14)
- SO_SNDLOWAT
 Send low-water mark
- SO_SNDTIMEO
 Send timeout
- SO_TIMESTAMP
 Receive timestamp with datagrams (timeval)
- SO_TIMESTAMPING
 Time stamping of incoming and outgoing packets (Linux 2.6.30)
- SO_TIMESTAMPNS
 Receive nanosecond timestamp with datagrams (timespec)
- SO_TYPE
 Get the socket type
- SO_USELOOPBACK
 Bypass hardware when possible
- SO_WANTMORE
 Give a hint when more data is ready
- SO_WANTOOBFLAG
 OOB data is wanted in MSG_FLAG on receive
- SO_WIFI_STATUS
 Toggle cmsg for wifi status (Linux 3.3)
- TCP_CONGESTION
 TCP congestion control algorithm (Linux 2.6.13, glibc 2.6)
- TCP_COOKIE_TRANSACTIONS
 TCP Cookie Transactions (Linux 2.6.33, glibc 2.18)
- TCP_CORK
 Don’t send partial frames (Linux 2.2, glibc 2.2)
- TCP_DEFER_ACCEPT
 Don’t notify a listening socket until data is ready (Linux 2.4, glibc 2.2)
- TCP_FASTOPEN
 Reduce step of the handshake process (Linux 3.7, glibc 2.18)
- TCP_INFO
 Retrieve information about this socket (Linux 2.4, glibc 2.2)
- TCP_KEEPCNT
 Maximum number of keepalive probes allowed before dropping a connection (Linux 2.4, glibc 2.2)
- TCP_KEEPIDLE
 Idle time before keepalive probes are sent (Linux 2.4, glibc 2.2)
- TCP_KEEPINTVL
 Time between keepalive probes (Linux 2.4, glibc 2.2)
- TCP_LINGER2
 Lifetime of orphaned FIN_WAIT2 sockets (Linux 2.4, glibc 2.2)
- TCP_MAXSEG
 Set maximum segment size
- TCP_MD5SIG
 Use MD5 digests (RFC2385, Linux 2.6.20, glibc 2.7)
- TCP_NODELAY
 Don’t delay sending to coalesce packets
- TCP_NOOPT
 Don’t use TCP options
- TCP_NOPUSH
 Don’t push the last block of write
- TCP_QUEUE_SEQ
 Sequence of a queue for repair mode (Linux 3.5, glibc 2.18)
- TCP_QUICKACK
 Enable quickack mode (Linux 2.4.4, glibc 2.3)
- TCP_REPAIR
 Repair mode (Linux 3.5, glibc 2.18)
- TCP_REPAIR_OPTIONS
 Options for repair mode (Linux 3.5, glibc 2.18)
- TCP_REPAIR_QUEUE
 Queue for repair mode (Linux 3.5, glibc 2.18)
- TCP_SYNCNT
 Number of SYN retransmits before a connection is dropped (Linux 2.4, glibc 2.2)
- TCP_THIN_DUPACK
 Duplicated acknowledgments handling for thin-streams (Linux 2.6.34, glibc 2.18)
- TCP_THIN_LINEAR_TIMEOUTS
 Linear timeouts for thin-streams (Linux 2.6.34, glibc 2.18)
- TCP_TIMESTAMP
 TCP timestamp (Linux 3.9, glibc 2.18)
- TCP_USER_TIMEOUT
 Max timeout before a TCP connection is aborted (Linux 2.6.37, glibc 2.18)
- TCP_WINDOW_CLAMP
 Clamp the size of the advertised window (Linux 2.4, glibc 2.2)
- UDP_CORK
 Don’t send partial frames (Linux 2.5.44, glibc 2.11)