получить параметры сокета (get the socket options)
Пролог (Prolog)
This manual page is part of the POSIX Programmer's Manual. The
Linux implementation of this interface may differ (consult the
corresponding Linux manual page for details of Linux behavior),
or the interface may not be implemented on Linux.
Имя (Name)
getsockopt — get the socket options
Синопсис (Synopsis)
#include <sys/socket.h>
int getsockopt(int socket, int level, int option_name,
void *restrict option_value, socklen_t *restrict option_len);
Описание (Description)
The getsockopt() function manipulates options associated with a
socket.
The getsockopt() function shall retrieve the value for the option
specified by the option_name argument for the socket specified by
the socket argument. If the size of the option value is greater
than option_len, the value stored in the object pointed to by the
option_value argument shall be silently truncated. Otherwise, the
object pointed to by the option_len argument shall be modified to
indicate the actual length of the value.
The level argument specifies the protocol level at which the
option resides. To retrieve options at the socket level, specify
the level argument as SOL_SOCKET. To retrieve options at other
levels, supply the appropriate level identifier for the protocol
controlling the option. For example, to indicate that an option
is interpreted by the TCP (Transmission Control Protocol), set
level to IPPROTO_TCP as defined in the <netinet/in.h> header.
The socket in use may require the process to have appropriate
privileges to use the getsockopt() function.
The option_name argument specifies a single option to be
retrieved. It can be one of the socket-level options defined in
sys_socket.h(0p) and described in Section 2.10.16, Use of
Options.
Возвращаемое значение (Return value)
Upon successful completion, getsockopt() shall return 0;
otherwise, -1 shall be returned and errno set to indicate the
error.
Ошибки (Error)
The getsockopt() function shall fail if:
EBADF
The socket argument is not a valid file descriptor.
EINVAL
The specified option is invalid at the specified socket
level.
ENOPROTOOPT
The option is not supported by the protocol.
ENOTSOCK
The socket argument does not refer to a socket.
The getsockopt() function may fail if:
EACCES
The calling process does not have appropriate privileges.
EINVAL
The socket has been shut down.
ENOBUFS
Insufficient resources are available in the system to
complete the function.
The following sections are informative.
Примеры (Examples)
None.
Использование в приложениях (Application usage)
None.
Обоснование (Rationale)
None.
Будущие направления (Future directions)
None.
Смотри также (See also)
Section 2.10.16, Use of Options, bind(3p), close(3p),
endprotoent(3p), setsockopt(3p), socket(3p)
The Base Definitions volume of POSIX.1‐2017, sys_socket.h(0p),
netinet_in.h(0p)