Expand description
Socket options as used by setsockopt
and getsockopt
.
Structs§
- Returns a value indicating whether or not this socket has been marked to accept connections with
listen(2)
. - Bind this socket to a particular device like “eth0”.
- Set or get the broadcast flag.
- Set or get the don’t route flag.
- Join a multicast group
- Leave a multicast group.
- If enabled, this boolean option allows binding to an IP address that is nonlocal or does not (yet) exist.
- Fetch the current system-estimated Path MTU.
- Set or read a boolean integer argument that determines whether sent multicast packets should be looped back to the local sockets.
- Set or read the time-to-live value of outgoing multicast packets for this socket.
- Set or receive the Type-Of-Service (TOS) field that is sent with every IP packet originating from this socket
- Setting this boolean option enables transparent proxying on this socket.
- The
recvmsg(2)
call will return the destination IP address for a UDP datagram. - Pass an
IP_PKTINFO
ancillary message that contains a pktinfo structure that supplies some information about the incoming packet. - Enable extended reliable error message passing.
- Set or retrieve the current time-to-live field that is used in every packet sent from this socket.
- Join an IPv6 multicast group.
- Set “don’t fragment packet” flag on the IPv6 packet.
- Leave an IPv6 multicast group.
- The
recvmsg(2)
call will return the destination IP address for a UDP datagram. - Control receiving of asynchronous error options.
- Set delivery of the
IPV6_PKTINFO
control message on incoming datagrams. - Traffic class associated with outgoing packets
- Set the unicast hop limit for the socket.
- The socket is restricted to sending and receiving IPv6 packets only.
- Enable sending of keep-alive messages on connection-oriented sockets.
- When enabled, a close(2) or shutdown(2) will not return until all queued messages for the socket have been successfully sent or the linger timeout has been reached.
- Set the mark for each packet sent through this socket (similar to the netfilter MARK target but socket-based).
- If this option is enabled, out-of-band data is directly placed into the receive data stream.
- Enable or disable the receiving of the
SCM_CREDENTIALS
control message. - Return the credentials of the foreign process connected to this socket.
- Set the protocol-defined priority for all packets to be sent on this socket
- Sets or gets the maximum socket receive buffer in bytes.
- Using this socket option, a privileged (
CAP_NET_ADMIN
) process can perform the same task asSO_RCVBUF
, but thermem_max limit
can be overridden. - Specify the receiving timeout until reporting an error.
- Enable or disable the receiving of the
SO_TIMESTAMP
control message. - Enable or disable the receiving of the
SO_TIMESTAMPNS
control message. - Enables local address reuse
- Permits multiple AF_INET or AF_INET6 sockets to be bound to an identical socket address.
- Indicates that an unsigned 32-bit value ancillary message (cmsg) should be attached to received skbs indicating the number of packets dropped by the socket since its creation.
- Specify the sending timeout until reporting an error.
- Sets or gets the maximum socket send buffer in bytes.
- Using this socket option, a privileged (
CAP_NET_ADMIN
) process can perform the same task asSO_SNDBUF
, but thewmem_max
limit can be overridden. - Gets the socket type as an integer.
- Get and clear the pending socket error.
- This option allows the caller to set the TCP congestion control algorithm to be used, on a per-socket basis.
- The maximum number of keepalive probes TCP should send before dropping the connection.
- The time (in seconds) the connection needs to remain idle before TCP starts sending keepalive probes
- The time (in seconds) between individual keepalive probes.
- The maximum segment size for outgoing TCP packets.
- Under most circumstances, TCP sends data when it is presented; when outstanding data has not yet been acknowledged, it gathers small amounts of output to be sent in a single packet once an acknowledgement is received. For a small number of clients, such as window systems that send a stream of mouse events which receive no replies, this packetization may cause significant delays. The boolean option TCP_NODELAY defeats this algorithm.
- Specifies the maximum amount of time in milliseconds that transmitted data may remain unacknowledged before TCP will forcibly close the corresponding connection
- Specifies exact type of timestamping information collected by the kernel Further reading
- Configures the behavior of time-based transmission of packets, for use with the
TxTime
control message.