ioctl(2)ioctl(2)Nameioctl - control device
ioctl(d, request, argp)
int d, request;
The call performs a variety of functions on open descriptors. In par‐
ticular, many operating characteristics of character special files (for
example, terminals) can be controlled with requests. Certain requests
operate on a number of device types. These include informational
requests, such as and The descriptions of various devices in the Refer‐
ence Pages, Section 4: Special Files discuss how applies to them. Also
consult <sys/ioctl.h> for more information.
An request has encoded in it whether the argument is an “in” parameter
or “out” parameter, and the size of the argument argp in bytes. Macros
and defines used in specifying an request are located in the file
If an error has occurred, a value of -1 is returned, and errno is set
to indicate the error.
The call fails under the following conditions:
[EBADF] The d is not a valid descriptor.
[ENOTTY] The d is not associated with a character special device.
[ENOTTY] The specified request does not apply to the kind of
object which the descriptor d references.
[EINVAL] The request or argp is not valid.
[EFAULT] The argp points to memory that is not part of the
process' address space.
See Alsoexecve(2), fcntl(2), devio(4), intro(4n), mu(4), nbuf(4), tty(4)ioctl(2)