aboutsummaryrefslogtreecommitdiffstats
path: root/man/man2const/IP_OPTIONS.2const
diff options
context:
space:
mode:
authorAlejandro Colomar <alx@kernel.org>2025-11-25 00:32:05 +0100
committerAlejandro Colomar <alx@kernel.org>2025-11-25 01:10:35 +0100
commit582fce4c02b32ecfc75351c3494cbf4f307f5b6b (patch)
tree65621bce4517dfb0392efbeeb2bb68ac26a88c49 /man/man2const/IP_OPTIONS.2const
parente11a82a6f7098b94bcd00fb767a1db269e3a83db (diff)
parent869bbbf4705313f690e85ad09b9b300b9f846165 (diff)
downloadman-pages-master.tar.gz
man/: Make sashimi of ip(7)HEADmaster
Signed-off-by: Alejandro Colomar <alx@kernel.org>
Diffstat (limited to 'man/man2const/IP_OPTIONS.2const')
-rw-r--r--man/man2const/IP_OPTIONS.2const71
1 files changed, 71 insertions, 0 deletions
diff --git a/man/man2const/IP_OPTIONS.2const b/man/man2const/IP_OPTIONS.2const
new file mode 100644
index 0000000000..f60d5aece0
--- /dev/null
+++ b/man/man2const/IP_OPTIONS.2const
@@ -0,0 +1,71 @@
+.\" Copyright, the authors of the Linux man-pages project
+.\"
+.\" SPDX-License-Identifier: Linux-man-pages-copyleft
+.\"
+.TH IP_OPTIONS 2const (date) "Linux man-pages (unreleased)"
+.SH NAME
+IP_OPTIONS
+\-
+options to be sent with every packet
+.SH LIBRARY
+Standard C library
+.RI ( libc ,\~ \-lc )
+.SH SYNOPSIS
+.nf
+.BR "#include <netinet/in.h>" " /* Definition of " IP* " constants */"
+.B #include <sys/socket.h>
+.P
+.BI int\~setsockopt(int\~ sockfd ,\~IPPROTO_IP,\~IP_OPTIONS,
+.BI " const\~void\~" buf [ size ],\~size_t\~ size );
+.BI int\~getsockopt(int\~ sockfd ,\~IPPROTO_IP,\~IP_OPTIONS,
+.BI " void\~" buf [ size ],\~size_t\~ size );
+.fi
+.SH DESCRIPTION
+Set or get the IP options to be sent with every packet from this socket.
+.P
+The arguments are a pointer to a memory buffer containing the options
+and the buffer length.
+.P
+The
+.BR setsockopt (2)
+call sets the IP options associated with a socket.
+The maximum option size for IPv4 is 40 bytes.
+See RFC\ 791 for the allowed options.
+.P
+When the initial connection request packet for a
+.B SOCK_STREAM
+socket contains IP options,
+the IP options will be set automatically
+to the options from the initial packet with routing headers reversed.
+.P
+Incoming packets are not allowed to change options
+after the connection is established.
+.P
+The processing of all incoming source routing options
+is disabled by default and can be enabled by using the
+.I accept_source_route
+.I /proc
+interface.
+Other options like timestamps are still handled.
+.P
+For datagram sockets, IP options can be set only by the local user.
+.P
+Calling
+.BR getsockopt (2)
+with
+.B IP_OPTIONS
+puts the current IP options used for sending into the supplied buffer.
+.SH ERRORS
+See
+.BR IPPROTO_IP (2const).
+See
+.BR setsockopt (2).
+See
+.BR ip (7).
+.SH HISTORY
+Linux 2.0.
+.\" Precisely: since Linux 1.3.30
+.SH SEE ALSO
+.BR IPPROTO_IP (2const),
+.BR setsockopt (2),
+.BR ip (7)