summaryrefslogtreecommitdiff
path: root/doc/posix-functions/getsockopt.texi
blob: 5ec2ad8c95c516dea259442c657fba94de13d0fa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
@node getsockopt
@section @code{getsockopt}
@findex getsockopt

POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9699919799/functions/getsockopt.html}

LSB specification:@* @url{https://refspecs.linuxbase.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/baselib-getsockopt-1.html}

Gnulib module: getsockopt

Portability problems fixed by Gnulib:
@itemize
@item
On Windows platforms (excluding Cygwin), error codes from this function
are not placed in @code{errno}, and @code{WSAGetLastError} must be used
instead.
@item
On HP-UX 11, in 64-bit mode, when the macro @code{_HPUX_ALT_XOPEN_SOCKET_API}
is not defined, this function behaves incorrectly because it is declared
to take a pointer to a 64-bit wide @code{socklen_t} entity but in fact
considers it as a pointer to a 32-bit wide @code{unsigned int} entity.
@end itemize

Portability problems not fixed by Gnulib:
@itemize
@item
Some platforms don't have a @code{socklen_t} type; in this case this function's
fifth argument type is @samp{int *}.
@item
Many socket options are not available on all platforms.
@end itemize