DragonFly On-Line Manual Pages


IOCTL(2)		 DragonFly 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

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.

SEE ALSO

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

HISTORY

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