NOM¶
ioctl - Contrôler les périphériques
SYNOPSIS¶
#include <sys/ioctl.h>
int ioctl(int d, unsigned long 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 indiqué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.65 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> ».