Copyright (C) 2000-2012 |
GNU Info (libc.info)Socket-Level OptionsSocket-Level Options -------------------- - Constant: int SOL_SOCKET Use this constant as the LEVEL argument to `getsockopt' or `setsockopt' to manipulate the socket-level options described in this section. Here is a table of socket-level option names; all are defined in the header file `sys/socket.h'. `SO_DEBUG' This option toggles recording of debugging information in the underlying protocol modules. The value has type `int'; a nonzero value means "yes". `SO_REUSEADDR' This option controls whether `bind' (Note: Setting Address) should permit reuse of local addresses for this socket. If you enable this option, you can actually have two sockets with the same Internet port number; but the system won't allow you to use the two identically-named sockets in a way that would confuse the Internet. The reason for this option is that some higher-level Internet protocols, including FTP, require you to keep reusing the same port number. The value has type `int'; a nonzero value means "yes". `SO_KEEPALIVE' This option controls whether the underlying protocol should periodically transmit messages on a connected socket. If the peer fails to respond to these messages, the connection is considered broken. The value has type `int'; a nonzero value means "yes". `SO_DONTROUTE' This option controls whether outgoing messages bypass the normal message routing facilities. If set, messages are sent directly to the network interface instead. The value has type `int'; a nonzero value means "yes". `SO_LINGER' This option specifies what should happen when the socket of a type that promises reliable delivery still has untransmitted messages when it is closed; see Note: Closing a Socket. The value has type `struct linger'. - Data Type: struct linger This structure type has the following members: `int l_onoff' This field is interpreted as a boolean. If nonzero, `close' blocks until the data are transmitted or the timeout period has expired. `int l_linger' This specifies the timeout period, in seconds. `SO_BROADCAST' This option controls whether datagrams may be broadcast from the socket. The value has type `int'; a nonzero value means "yes". `SO_OOBINLINE' If this option is set, out-of-band data received on the socket is placed in the normal input queue. This permits it to be read using `read' or `recv' without specifying the `MSG_OOB' flag. Note: Out-of-Band Data. The value has type `int'; a nonzero value means "yes". `SO_SNDBUF' This option gets or sets the size of the output buffer. The value is a `size_t', which is the size in bytes. `SO_RCVBUF' This option gets or sets the size of the input buffer. The value is a `size_t', which is the size in bytes. `SO_STYLE' `SO_TYPE' This option can be used with `getsockopt' only. It is used to get the socket's communication style. `SO_TYPE' is the historical name, and `SO_STYLE' is the preferred name in GNU. The value has type `int' and its value designates a communication style; see Note: Communication Styles. `SO_ERROR' This option can be used with `getsockopt' only. It is used to reset the error status of the socket. The value is an `int', which represents the previous error status. automatically generated by info2www version 1.2.2.9 |