64 lines
1.9 KiB
Diff
64 lines
1.9 KiB
Diff
|
diff -ur man-pages-3.43.orig/man7/tcp.7 man-pages-3.43/man7/tcp.7
|
||
|
--- man-pages-3.43.orig/man7/tcp.7 2012-10-15 11:13:50.000000000 +0200
|
||
|
+++ man-pages-3.43/man7/tcp.7 2012-10-25 19:37:24.084706083 +0200
|
||
|
@@ -820,7 +820,58 @@
|
||
|
socket options are valid on TCP sockets.
|
||
|
For more information see
|
||
|
.BR ip (7).
|
||
|
-.\" FIXME Document TCP_CONGESTION (new in 2.6.13)
|
||
|
+.TP
|
||
|
+.BR TCP_CONGESTION " (since Linux 2.6.13)"
|
||
|
+Get or set the congestion-control algorithm for this socket.
|
||
|
+The
|
||
|
+.I optval
|
||
|
+argument is a pointer to a character-string buffer.
|
||
|
+
|
||
|
+For
|
||
|
+.BR getsockopt ()
|
||
|
+.I *optlen
|
||
|
+specifies the amount of space available in the buffer pointed to by
|
||
|
+.IR optval ,
|
||
|
+which should be at least 16 bytes (defined by the kernel-internal constant
|
||
|
+.BR TCP_CA_NAME_MAX ).
|
||
|
+On return, the buffer pointed to by
|
||
|
+.I optval
|
||
|
+is set to a null-terminated string containing the name of the
|
||
|
+congestion-control algorithm for this socket, and
|
||
|
+.I *optlen
|
||
|
+is set to the minimum of its original value and
|
||
|
+.BR TCP_CA_NAME_MAX .
|
||
|
+If the value passed in
|
||
|
+.I *optlen
|
||
|
+is too small, then the string returned in
|
||
|
+.I *optval
|
||
|
+is silently truncated, and no terminating null byte is added.
|
||
|
+If an empty string is returned, then the socket is using the default
|
||
|
+congestion-control algorithm, determined as described under
|
||
|
+.I tcp_congestion_control
|
||
|
+above.
|
||
|
+
|
||
|
+For
|
||
|
+.BR setsockopt ()
|
||
|
+.I optlen
|
||
|
+specifies the length of the congestion-control algorithm name
|
||
|
+contained in the buffer pointed to by
|
||
|
+.IR optval ;
|
||
|
+this length need not include any terminating null byte.
|
||
|
+The algorithm "reno" is always permitted;
|
||
|
+other algorithms may be available, depending on kernel configuration.
|
||
|
+Possible errors from
|
||
|
+.BR setsockopt ()
|
||
|
+include:
|
||
|
+algorithm not found/available
|
||
|
+.RB ( ENOENT );
|
||
|
+setting this algorithm requires the
|
||
|
+.B CAP_NET_ADMIN
|
||
|
+capability
|
||
|
+.RB ( EPERM );
|
||
|
+and failure getting kernel module
|
||
|
+.RB ( EBUSY ).
|
||
|
+.I
|
||
|
.TP
|
||
|
.BR TCP_CORK " (since Linux 2.2)"
|
||
|
.\" precisely: since 2.1.127
|