From 527abe77feda4f59a2164c480659d2ab54b70cc2 Mon Sep 17 00:00:00 2001 From: Michael Kerrisk Date: Fri, 21 Nov 2008 11:40:18 -0500 Subject: [PATCH] tcp.7: Add kernel version numbers for TCP_* socket options Note kernel version were each socket option first appeared. Signed-off-by: Michael Kerrisk --- man7/tcp.7 | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/man7/tcp.7 b/man7/tcp.7 index 07fef7165..9dfc95f6a 100644 --- a/man7/tcp.7 +++ b/man7/tcp.7 @@ -735,7 +735,8 @@ For more information see .BR ip (7). .\" FIXME Document TCP_CONGESTION (new in 2.6.13) .TP -.B TCP_CORK +.BR TCP_CORK " (since Linux 2.2)" +.\" precisely: since 2.1.127 If set, don't send out partial frames. All queued partial frames are sent when the option is cleared again. @@ -753,7 +754,8 @@ only since Linux 2.5.71. This option should not be used in code intended to be portable. .TP -.B TCP_DEFER_ACCEPT +.BR TCP_DEFER_ACCEPT " (since Linux 2.4)" +.\" Precisely: since 2.3.38 Allows a listener to be awakened only when data arrives on the socket. Takes an integer value (seconds), this can @@ -762,19 +764,21 @@ complete the connection. This option should not be used in code intended to be portable. .TP -.B TCP_INFO +.BR TCP_INFO " (since Linux 2.4)" Used to collect information about this socket. The kernel returns a \fIstruct tcp_info\fP as defined in the file .IR /usr/include/linux/tcp.h . This option should not be used in code intended to be portable. .TP -.B TCP_KEEPCNT +.BR TCP_KEEPCNT " (since Linux 2.4)" +.\" Precisely: since 2.3.18 The maximum number of keepalive probes TCP should send before dropping the connection. This option should not be used in code intended to be portable. .TP -.B TCP_KEEPIDLE +.BR TCP_KEEPIDLE " (since Linux 2.4)" +.\" Precisely: since 2.3.18 The time (in seconds) the connection needs to remain idle before TCP starts sending keepalive probes, if the socket option @@ -782,12 +786,14 @@ option has been set on this socket. This option should not be used in code intended to be portable. .TP -.B TCP_KEEPINTVL +.BR TCP_KEEPINTVL " (since Linux 2.4)" +.\" Precisely: since 2.3.18 The time (in seconds) between individual keepalive probes. This option should not be used in code intended to be portable. .TP -.B TCP_LINGER2 +.BR TCP_LINGER2 " (since Linux 2.4)" +.\" Precisely: since 2.3.41 The lifetime of orphaned FIN_WAIT2 state sockets. This option can be used to override the system-wide setting in the file .I /proc/sys/net/ipv4/tcp_fin_timeout @@ -800,6 +806,7 @@ This option should not be used in code intended to be portable. .TP .B TCP_MAXSEG +.\" Present in Linux 1.0 The maximum segment size for outgoing TCP packets. If this option is set before connection establishment, it also changes the MSS value announced to the other end in the @@ -817,6 +824,7 @@ its minimum and maximum bounds over the value provided. .\" on the Internet. .TP .B TCP_NODELAY +.\" Present in Linux 1.0 If set, disable the Nagle algorithm. This means that segments are always sent as soon as possible, even if there is only a @@ -832,7 +840,7 @@ pending output, even if .B TCP_CORK is currently set. .TP -.B TCP_QUICKACK +.BR TCP_QUICKACK " (since Linux 2.4.4)" Enable quickack mode if set or disable quickack mode if cleared. In quickack mode, acks are sent @@ -847,14 +855,16 @@ delayed ack timeouts occurring and data transfer. This option should not be used in code intended to be portable. .TP -.B TCP_SYNCNT +.BR TCP_SYNCNT " (since Linux 2.4)" +.\" Precisely: since 2.3.18 Set the number of SYN retransmits that TCP should send before aborting the attempt to connect. It cannot exceed 255. This option should not be used in code intended to be portable. .TP -.B TCP_WINDOW_CLAMP +.BR TCP_WINDOW_CLAMP " (since Linux 2.4)" +.\" Precisely: since 2.3.41 Bound the size of the advertised window to this value. The kernel imposes a minimum size of SOCK_MIN_RCVBUF/2. This option should not be used in code intended to be