Manpage of 'ioctl' on UHLU - BSD System Documentation,
Programming Reference, Manual Pages and Source Code
All manual pages         All RFC pages
Common page
for ioctl
Other pages
for ioctl
More pages
containing ioctl

Section 2 manual page or howto for 'ioctl'  

IOCTL(2)		  FreeBSD System Calls Manual		      IOCTL(2)

NAME
     ioctl -- control device

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <sys/ioctl.h>

     int
     ioctl(int d, unsigned long request, ...);

DESCRIPTION
     The ioctl() system call manipulates the underlying device parameters of
     special files.  In particular, many operating characteristics of charac-
     ter special files (e.g. terminals) may be controlled with ioctl()
     requests.	The argument d must be an open file descriptor.

     The third argument to ioctl() is traditionally named char *argp.  Most
     uses of ioctl(), however, require the third argument to be a caddr_t or
     an int.

     An ioctl() request has encoded in it whether the argument is an ``in''
     argument or ``out'' argument, and the size of the argument argp in bytes.
     Macros and defines used in specifying an ioctl request are located in the
     file <sys/ioctl.h>.

RETURN VALUES
     If an error has occurred, a value of -1 is returned and errno is set to
     indicate the error.

ERRORS
     The ioctl() system call will fail if:

     [EBADF]		The d argument is not a valid descriptor.

     [ENOTTY]		The d argument is not associated with a character spe-

			cial device.

     [ENOTTY]		The specified request does not apply to the kind of

			object that the descriptor d references.

     [EINVAL]		The request or argp argument is not valid.

     [EFAULT]		The argp argument points outside the process's allo-

			cated address space.

SEE ALSO
     execve(2), fcntl(2), intro(4), tty(4)

HISTORY
     The ioctl() function appeared in Version 7 AT&T UNIX.

FreeBSD 7.2			 July 14, 2007			   FreeBSD 7.2

NAME - LIBRARY - SYNOPSIS - DESCRIPTION - RETURN VALUES - ERRORS - 
SEE ALSO - HISTORY -  
All manual pages         All RFC pages
Common page
for ioctl
Other pages
for ioctl
More pages
containing ioctl
A random manual page         All manual pages        All RFC pages