ioctl(2)



NAME

     ioctl - control device


SYNOPSIS

     #include <sys/types.h>
     #include <sys/ioctl.h>

     int ioctl(int d, int request, void *argp)             (Minix)
     int ioctl(int d, ioreq_t request, void *argp)         (Minix-vmd)


DESCRIPTION

     Ioctl  performs  a  variety  of  functions  on  open   descriptors.    In
     particular,  many  operating  characteristics  of character special files
     (e.g. terminals) may be controlled with ioctl requests.  The writeups  of
     various devices in section 4 discuss how ioctl applies to them.

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


RETURN VALUE

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


ERRORS

     Ioctl will fail if one or more of the following are true:

     [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

     execve(2), fcntl(2), mt(4), tty(4), intro(4).