IOCTL(2) System Calls IOCTL(2)
NAME
ioctl - control device
SYNOPSIS
#include <sys/ioctl.h>
int ioctl (int d, unsigned long request, void *argp);
DESCRIPTION
The ioctl function manipulates the underlying device parameters of spe‐
cial files. In particular, many operating characteristics of character
special files (e.g. terminals) may be controlled with ioctl requests.
The argument d must be an open file descriptor.
An ioctl request has encoded in it whether the argument is an 'in' pa‐
rameter or 'out' parameter, 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>.
The writeups of various devices in chapter 4 discuss how ioctl applies
to them.
RETURN VALUES
If an error has occurred, a value of -1 is returned and errno is set to
indicate the error.
ERRORS
Ioctl will fail if:
EBADF d is not a valid descriptor.
ENOTTY d is not associated with a character special device.
ENOTTY The specified request does not apply to the kind of ob‐
ject that the descriptor d references.
EINVAL Request or argp is not valid.
SEE ALSO
mt(1), execve(2), fcntl(2), tty(4), intro(4)
HISTORY
An ioctl function call appeared in Version 7 AT&T UNIX.
GNO 16 January 1997 IOCTL(2)
Man(1) output converted with
man2html