poll tests: Avoid test failure on BSD and Solaris systems.
[gnulib.git] / doc / posix-functions / ioctl.texi
blobd3caa75bd7a9cc9e2239cc51270dfe51efd49aa2
1 @node ioctl
2 @section @code{ioctl}
3 @findex ioctl
5 POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9699919799/functions/ioctl.html}
7 LSB specification:
8 @itemize
9 @item
10 @url{https://refspecs.linuxbase.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/baselib-ioctl-2.html}
11 @item
12 @url{https://refspecs.linuxbase.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/baselib-ttyio-2.html}
13 @item
14 @url{https://refspecs.linuxbase.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/baselib-sockio-2.html}
15 @end itemize
17 Gnulib module: ioctl
19 Portability problems fixed by Gnulib:
20 @itemize
21 @item
22 On Windows platforms (excluding Cygwin), @code{ioctl} is called
23 @code{ioctlsocket}, and error codes from this function are not placed in
24 @code{errno}, and @code{WSAGetLastError} must be used instead.
25 @item
26 The second parameter is of type @code{unsigned long} rather than @code{int}
27 on some platforms:
28 glibc 2.26, Mac OS X 10.13, FreeBSD 11.0, NetBSD 9.0, OpenBSD 6.7, Haiku 2017.
29 @end itemize
31 Portability problems not fixed by Gnulib:
32 @itemize
33 @item
34 Most @code{ioctl} requests are platform and hardware specific.
35 @end itemize