Set options associated with a socket
Synopsis:
#include <sys/types.h>
#include <sys/socket.h>
int setsockopt( int s,
int level,
int optname,
const void * optval,
socklen_t optlen );
Arguments:
- s
- The file descriptor of the socket that the option is to be applied on,
as returned by
socket().
- level
- The protocol layer that the option is to be applied to.
In most cases, it's a socket-level option and is indicated by SOL_SOCKET.
- optname
- The option for the socket file descriptor.
- optval
- A pointer to the value of the option (in most cases, whether the
option is to be turned on or off).
If no option value is to be returned, optval may be NULL.
Most socket-level options use an int parameter for optval.
Others, such as the SO_LINGER,
SO_SNDTIMEO,
and
SO_RCVTIMEO
options, use structures that also let you get data associated with
the option.
- optlen
- A pointer to the length of the value of the option.
This argument is a value-result parameter; you should initialize it
to indicate the size of the buffer pointed to by optval.
Library:
libsocket
Use the -l socket option to
qcc
to link against this library.
Description:
The setsockopt() function sets the options associated with a socket.
See
getsockopt()
for more detailed information.
Returns:
- 0
- Success.
- -1
- An error occurred (errno is set).
Errors:
- EBADF
- Invalid file descriptor s.
- EDOM
- Value was set out of range.
- EFAULT
- The address pointed to by optval isn't in a
valid part of the process address space.
- EINVAL
- No optval value was specified.
- ENOPROTOOPT
- The option is unknown at the level indicated.
Classification:
POSIX 1003.1
Safety: |
|
Cancellation point |
No |
Interrupt handler |
No |
Signal handler |
No |
Thread |
Yes |