-.\" Ioctl List 1.3.27
-.\" Sun 17 Sep 1995
+.\" Ioctl List 1.3.27 is copyright 1995 by Michael Elizabeth Chastain.
.\" Michael Elizabeth Chastain
.\" <mec@duracef.shout.net>
.\"
-.\" // Copyright
-.\"
-.\" Ioctl List 1.3.27 is copyright 1995 by Michael Elizabeth Chastain.
+.\" %%%LICENSE_START(GPLv2_MISC)
.\" It is licensed under the Gnu Public License, Version 2.
+.\" %%%LICENSE_END
+.\"
+.\" Ioctl List 1.3.27
+.\" Sun 17 Sep 1995
+.\"
+.\" // Copyright
.\"
.\"
.\"
.\" 2007-12-29 Alain Portal <aportal@univ-montp2.fr> and Michael Kerrisk
.\" <mtk.manpages@gmail.com>:
.\" Various formatting improvements
-.TH IOCTL_LIST 2 2007-12-29 "Linux" "Linux Programmer's Manual"
+.TH IOCTL_LIST 2 2013-09-17 "Linux" "Linux Programmer's Manual"
.SH NAME
ioctl_list \- list of ioctl calls in Linux/i386 kernel
.SH DESCRIPTION
type are given.
.PP
An argument type of
-.I const struct foo *
+.I "const struct foo\ *"
means the argument is input to the kernel.
-.I struct foo *
+.I "struct foo\ *"
means the kernel outputs the argument.
If the kernel uses the argument for both input and output, this is
marked with \fI//\ I-O\fP.
separate section.
.PP
This list is very incomplete.
-.SS "ioctl structure"
+.SS ioctl structure
.\" added two sections - aeb
Ioctl command values are 32-bit constants.
In principle these constants are completely arbitrary, but people have
for a common purpose or a common driver), and an 8-bit
serial number.
.LP
-The macros describing this structure live in \fI<asm/ioctl.h>\fP
+The macros describing this structure live in
+.I <asm/ioctl.h>
and are
.B _IO(type,nr)
and
Thus, it seems that the new structure only gave disadvantages:
it does not help in checking, but it causes varying values
for the various architectures.
-.SH "RETURN VALUE"
+.SH RETURN VALUE
Decent ioctls return 0 on success and \-1 on error, while
any output value is stored via the argument.
However,
0x000089E1 SIOCGETSGCNT struct sioc_sg_req * // I-O
.TE
+// <include/linux/msdos_fs.h>
+.TS
+l l l l.
+0x82307201 VFAT_IOCTL_READDIR_BOTH struct dirent [2]
+0x82307202 VFAT_IOCTL_READDIR_SHORT struct dirent [2]
+0x80047210 FAT_IOCTL_GET_ATTRIBUTES __u32 *
+0x40047211 FAT_IOCTL_SET_ATTRIBUTES const __u32 *
+.TE
+
// <include/linux/mtio.h>
.TS
l l l.
.B CDROMREADAUDIO
takes an input pointer
-.IR "const struct cdrom_read_audio *" .
+.IR "const struct cdrom_read_audio\ *" .
The
.I buf
field points to an output buffer of length
-.IR "nframes * CD_FRAMESIZE_RAW" .
+.IR "nframes\ * CD_FRAMESIZE_RAW" .
.BR CDROMREADCOOKED ,
.BR CDROMREADMODE1 ,
and
.B CDROMREADRAW
take an input pointer
-.IR "const struct cdrom_msf *" .
+.IR "const struct cdrom_msf\ *" .
They use the same pointer as an output pointer to
.IR "char []" .
The length varies by request.
and
.B EQL_SETMASTERCFG
take a
-.IR "struct ifreq *" .
+.IR "struct ifreq\ *" .
The
.I ifr_data
field is a pointer to another structure as follows:
.fi
.B FDRAWCMD
takes a
-.IR "struct floppy raw_cmd *" .
+.IR "struct floppy raw_cmd\ *" .
If
.I flags & FD_RAW_WRITE
is nonzero, then
and
.B PIO_FONTX
take a
-.I struct console_font_desc *
+.I struct console_font_desc\ *
or a
-.IR "const struct console_font_desc *" ,
+.IR "const struct console_font_desc\ *" ,
respectively.
.I chardata
points to a buffer of
and
.B PIO_UNIMAP
take a
-.I struct unimapdesc *
+.I "struct unimapdesc\ *"
or a
-.IR "const struct unimapdesc *" ,
+.IR "const struct unimapdesc\ *" ,
respectively.
.I entries
points to a buffer of
.B SCSI_IOCTL_PROBE_HOST
takes an input pointer
-.IR "const int *" ,
+.IR "const int\ *" ,
which is a length.
It uses the same pointer as an output pointer to a
.I char []
.fi
.B SIOCGIFCONF
takes a
-.IR "struct ifconf *" .
+.IR "struct ifconf\ *" .
The
.I ifc_buf
field points to a buffer of length
.fi
.B TIOCLINUX
takes a
-.IR "const char *" .
+.IR "const char\ *" .
It uses this to distinguish several
independent subcases.
In the table below,
.TE
.SH SEE ALSO
.BR ioctl (2)
+.SH COLOPHON
+This page is part of release 3.68 of the Linux
+.I man-pages
+project.
+A description of the project,
+information about reporting bugs,
+and the latest version of this page,
+can be found at
+\%http://www.kernel.org/doc/man\-pages/.