[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
<sys/ioctl.h> status
From: |
Bruno Haible |
Subject: |
<sys/ioctl.h> status |
Date: |
Fri, 10 Oct 2008 02:05:13 +0200 |
User-agent: |
KMail/1.5.4 |
Where should ioctl() be declared? Certainly not in <sys/socket.h>. Most
platforms have it in <sys/ioctl.h>. Only AIX and Solaris declare it in
<unistd.h> instead. POSIX specifies it should be declared <stropts.h>,
but many platforms don't have <stropts.h> (and who needs STREAMS anyway?).
The de-facto standard is apparently <sys/ioctl.h>.
The ioctl() declaration is
int ioctl (int, unsigned long, ...) on glibc, MacOS X, *BSD, BeOS,
int ioctl (int, int, ...) on AIX, HP-UX, IRIX, OSF/1,
Solaris, Cygwin, Interix.
Step 1: Preparation of the documentation.
2008-10-09 Bruno Haible <address@hidden>
* doc/glibc-headers/sys_ioctl.texi: New file.
* doc/gnulib.texi: Include it.
Changing permissions from . to 100644
*** doc/glibc-headers/sys_ioctl.texi.orig 2003-09-23 19:59:22.000000000
+0200
--- doc/glibc-headers/sys_ioctl.texi 2008-10-10 01:52:46.000000000 +0200
***************
*** 0 ****
--- 1,33 ----
+ @node sys/ioctl.h
+ @section @file{sys/ioctl.h}
+
+ Declares the function @code{ioctl}.
+
+ Documentation:
+ @itemize
+ @item
+ @ifinfo
+ @ref{IOCTLs,,,libc},
+ @end ifinfo
+ @ifnotinfo
+ @url{http://www.gnu.org/software/libc/manual/html_node/IOCTLs.html},
+ @end ifnotinfo
+ @item
+ @uref{http://www.kernel.org/doc/man-pages/online/pages/man2/ioctl.2.html,,man
ioctl}.
+ @end itemize
+
+ Gnulib module: ---
+
+ Portability problems fixed by Gnulib:
+ @itemize
+ @end itemize
+
+ Portability problems not fixed by Gnulib:
+ @itemize
+ @item
+ This header file is missing on some platforms:
+ mingw.
+ @item
+ This header file does not declare the @code{ioctl} function on some platforms:
+ AIX 5.1, Solaris 10.
+ @end itemize
*** doc/gnulib.texi.orig 2008-10-10 01:54:44.000000000 +0200
--- doc/gnulib.texi 2008-10-10 01:26:58.000000000 +0200
***************
*** 2937,2942 ****
--- 2937,2943 ----
* pty.h::
* resolv.h::
* shadow.h::
+ * sys/ioctl.h::
* sysexits.h::
* ttyent.h::
@end menu
***************
*** 2969,2974 ****
--- 2970,2976 ----
@include glibc-headers/pty.texi
@include glibc-headers/resolv.texi
@include glibc-headers/shadow.texi
+ @include glibc-headers/sys_ioctl.texi
@include glibc-headers/sysexits.texi
@include glibc-headers/ttyent.texi
***************
*** 5088,5093 ****
--- 5090,5098 ----
@include glibc-functions/ioperm.texi
@include glibc-functions/iopl.texi
+ @c @node Glibc sys/ioctl.h
+ @c @section Glibc @code{<sys/ioctl.h>}
+
@c @node Glibc sys/ipc.h
@c @section Glibc Extensions to @code{<sys/ipc.h>}
- <sys/ioctl.h> status,
Bruno Haible <=