FreeBSD Manual Pages
IOCTL(2) BSD 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() re- quests. The argument d must be an open file descriptor. The third argument to ioctl() is traditionally named char *argp. Most uses of ioctl() in FreeBSD 3.0, 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" ar- gument 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. BSD December 11, 1993 BSD
NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | HISTORY
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ioctl&sektion=2&manpath=FreeBSD+6.0-RELEASE>