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'
       parameter  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
                     object 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