Provided by: manpages-fr-dev_2.64.1-1_all bug

NOM

       strerror, strerror_r - Obtenir le libellé d’un numéro d’erreur

SYNOPSIS

       #include <string.h>

       char *strerror (int errnum);

       char *strerror_r(int errnum, char *buf, size_t buflen);

   Exigences  pour les macros de test de fonctionnalité de la glibc (consultez
   feature_test_macros(7)) :

       La version compatible XSI de strerror_r() est fournie si :
       (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && ! _GNU_SOURCE

DESCRIPTION

       La fonction strerror() renvoie une chaîne décrivant  le  code  d’erreur
       passé  en  argument  errnum,  en  utilisant éventuellement la catégorie
       LC_MESSAGES de la localisation pour sélectionner la langue  appropriée.
       Cette  chaîne  ne  doit  pas être modifiée par l’application, mais peut
       être écrasée par un appel ultérieur à perror(3) ou  strerror().  Aucune
       autre fonction de bibliothèque ne modifie cette chaîne.

       La  fonction  strerror_r()  est  identique à strerror() mais fonctionne
       correctement dans un  environnement  multithread.  Cette  fonction  est
       disponible  en  deux versions : une version conforme XSI spécifiée dans
       POSIX.1-2001  (disponible  depuis  la  glibc  2.3.4)  et  une   version
       spécifique  GNU (disponible depuis la glibc 2.0). La version compatible
       XSI est fournie par la macro de test mentionnée dans le SYNOPSIS   sino
       la  version  spécifique  GNU est fournie. Si aucune macro de test n’est
       définie explicitement, alors (depuis la glibc  2.4)  _POSIX_SOURCE  est
       définie  par  défaut  avec  la  valeur  200112L,  de telle sorte que la
       version compatible XSI de strerror_r() est fournie par défaut.

       La  version  de  strerror_r()  conforme  XSI  est  préférée  pour   les
       applications  portables.  Elle  renvoie la chaîne dans le tampon buf de
       longueur buflen fourni par l’appelant.

       La version de strerror_r() spécifique GNU renvoie un pointeur  sur  une
       chaîne  contenant  le message d’erreur. Cela peut être soit un pointeur
       vers une chaîne que la fonction stocke dans buf, soit un pointeur  vers
       une  chaîne  statique (immuable) (auquel cas buf n’est pas utilisé). Si
       la fonction stocke une chaîne dans buf,  au  plus  buflen  octets  sont
       stockés  (la  chaîne peut être tronquée si buflen est trop petit) et la
       chaîne inclut toujours l’octet nul de terminaison.

VALEUR RENVOYÉE

       Les fonctions  strerror()  et  strerror_r()  renvoient  la  description
       correspondant  au code transmis, ou un message « Unknown error nnn » si
       le numéro d’erreur n’existe pas.

       La fonction strerror_r() conforme XSI renvoie 0 si elle réussit  et  -1
       si elle échoue et écrit errno pour indiquer l’erreur.

ERREURS

       EINVAL La valeur de errnum n’est pas un code d’erreur valide.

       ERANGE Le tampon fourni n’est pas assez grand.

CONFORMITÉ

       strerror() est spécifiée par POSIX.1-2001, C89 et C99. strerror_r() est
       spécifiée par POSIX.1-2001.

       La  fonction  strerror_r()  spécifique  GNU  n’est  pas  une  extension
       standard.

       POSIX.1-2001  permet  à  strerror() d’écrire errno si l’appel rencontre
       une erreur mais ne spécifie pas quelle valeur  devrait  être  retournée
       comme  résultat  de  fonction  dans  l’éventualité  d’une  erreur.  Sur
       certains systèmes, strerror() renvoie NULL si le  numéro  d’erreur  est
       inconnu.  Sur  d’autres, strerror() renvoie une chaîne du style « Error
       nnn occurred » et écrit EINVAL dans errno si  le  numéro  d’erreur  est
       inconnu.

VOIR AUSSI

       err(3), errno(3), error(3), perror(3), strsignal(3)

TRADUCTION

       Cette  page  de  manuel  a  été  traduite et mise à jour par Christophe
       Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis  par
       Alain  Portal  <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
       disposition sur http://manpagesfr.free.fr/.

       Les mises à jour et corrections de la version présente dans Debian sont
       directement         gérées         par         Nicolas         François
       <nicolas.francois@centraliens.net>   et   l’équipe    francophone    de
       traduction de Debian.

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

                                26 juillet 2007                    STRERROR(3)