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