Provided by: manpages-es_1.55-10_all bug

NOMBRE

       ioctl - controlar dispositivo

SINOPSIS

       #include <sys/ioctl.h>

       int ioctl(int d, int request, ...);

DESCRIPCIÓN

       La   función  ioctl  manipula  los  parámetros  subyacentes  de  ficheros  especiales.  En
       particular, muchas características operacionales de los ficheros especiales de  caracteres
       (verbigracia las terminales) pueden controlarse con llamadas a ioctl.  El argumento d debe
       ser un descriptor de fichero abierto.

       El segundo argumento es un código de solicitud que depende  del  dispositivo.   El  tercer
       argumento es un puntero a memoria sin tipo. Es tradicionalmente char *argp (desde los días
       antes de que void * se considerara  código  C  válido),  y  así  se  le  llamará  en  este
       documento.

       Una  peticion  de  ioctl  tiene  codificada en sí misma si el argumento es un parámetro de
       entrada o de salida, y el tamaño del argumento argp en bytes.  En el fichero  de  cabecera
       <sys/ioctl.h> se definen macros empleadas al especificar una peticion de ioctl.

VALOR DEVUELTO

       Normalmente,  se  devuelve  cero  en  caso  de  éxito.  Unos pocos ioctls usan el valor de
       retorno como un parámetro de salida y devuelven un valor no negativo en caso de éxito.  En
       caso de error, se devuelve -1, y se pone en errno un valor apropiado.

ERRORES

       EBADF  d no es un descriptor válido.

       EFAULT argp referencia a una zona de memoria inaccesible.

       ENOTTY d no está asociado con un dispositivo especial de caracteres.

       ENOTTY La  petición  especificada  no  se  aplica  a  la clase de objeto que referencia el
              descriptor d.

       EINVAL Peticion o argp no es válido.

CONFORME A

       Ningún estándar en particular. Los argumentos, valores devueltos y semántica  de  ioctl(2)
       varían  según  el  controlador  de  dispositivo  en  cuestión  (la  llamada se usa como un
       recogedor para las operaciones que no encajen claramente en el modelo de flujos de E/S  de
       Unix).  Vea  ioctl_list(2) para una lista de muchas de las llamadas conocidas a ioctl.  La
       función ioctl apareció por primera vez en Unix de AT&T Versión 7.

VÉASE TAMBIÉN

       execve(2), fcntl(2), ioctl_list(2), mt(4), sd(4), tty(4)