DragonFly On-Line Manual Pages

Search: Section:  

IOCTL(2)                 DragonFly System Calls Manual                IOCTL(2)


ioctl -- control device


Standard C Library (libc, -lc)


#include <sys/ioctl.h> int ioctl(int d, unsigned long request, ...);


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>.


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


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 object that the descriptor d references. [EINVAL] request or argp is not valid. [EFAULT] argp points outside the process's allocated address space.


execve(2), fcntl(2), intro(4), tty(4), ioctl(9)


An ioctl() function call appeared in Version 7 AT&T UNIX. DragonFly 3.5 December 11, 1993 DragonFly 3.5

Search: Section: