NOM¶
ioctl - Contrôler les périphériques
SYNOPSIS¶
#include <sys/ioctl.h>
int ioctl(int d, int requête, ...);
DESCRIPTION¶
La fonction
ioctl() modifie le comportement des périphériques
sous‐jacents des fichiers spéciaux. En particulier, de nombreuses
caractéristiques des fichiers spéciaux en mode caractère (par
exemple des terminaux) peuvent être contrôlées avec des
requêtes
ioctl(). L'argument
d doit être un
descripteur de fichier ouvert.
Le second argument est le code de la requête dépendant du
périphérique. Le troisième argument est un pointeur non
typé. Il est traditionnellement défini en
char *argp
(ceci date de l'époque avant que
void * soit du C valide), et sera
ainsi nommé dans le reste de cette page.
Une
requête ioctl() encapsule le fait que l'argument est un
paramètre d'
entrée ou de
sortie ainsi que la taille
de l'argument
argp en octets. Les macros et constantes symboliques
décrivant les
requêtes ioctl() se trouvent dans le
fichier
<sys/ioctl.h>.
VALEUR RENVOYÉE¶
En général,
ioctl renvoie 0 s'il réussit, ou -1 s'il
échoue. Certaines requêtes ioctl utilisent la valeur de retour comme
paramètre de sortie, et renvoient une valeur positive si elles
réussissent (et -1 pour les erreurs). En cas d'échec,
errno
contient le code d'erreur.
ERREURS¶
- EBADF
- d n'est pas un descripteur de fichier valide.
- EFAULT
- argp pointe en dehors de l'espace d'adressage
valide.
- EINVAL
- La requête ou l'argument argp n'est pas
valide.
- ENOTTY
- d n'est pas associé avec un fichier
spécial en mode caractère.
- ENOTTY
- La requête spécifiée ne s'applique pas au
type d'objet associé avec le descripteur d.
Pas de vrai standard. Les arguments, les valeurs de retour, et la
sémantique des
ioctl() varient en fonction du
périphérique concerné (cet appel système est utilisé
pour encapsuler les opérations qui ne se conforment pas bien au
modèle UNIX des entrées/sorties par flux). Consultez
ioctl_list(2) pour une liste des principaux appels
ioctl()
connus. La fonction
ioctl() est apparue dans l'UNIX d'AT&T Version
7.
NOTES¶
Pour utiliser cet appel, on a besoin d'un descripteur de fichier ouvert.
Souvent, l'appel
open(2) a des effets de bord non désirés,
qui peuvent être évités sous Linux en lui passant le drapeau
O_NONBLOCK.
VOIR AUSSI¶
execve(2),
fcntl(2),
ioctl_list(2),
open(2),
sd(4),
tty(4)
COLOPHON¶
Cette page fait partie de la publication 3.44 du projet
man-pages Linux.
Une description du projet et des instructions pour signaler des anomalies
peuvent être trouvées à l'adresse
<
http://www.kernel.org/doc/man-pages/>.
TRADUCTION¶
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a
<
http://po4a.alioth.debian.org/> par l'équipe de traduction
francophone au sein du projet perkamon
<
http://perkamon.alioth.debian.org/>.
Christophe Blaess <
http://www.blaess.fr/christophe/> (1996-2003), Alain
Portal <
http://manpagesfr.free.fr/> (2003-2006). Julien Cristau et
l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet
manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande «
man -L C
<section> <page_de_man> ».