Provided by: manpages-fr-dev_3.27fr1.4-1_all bug

NOM

       strerror, strerror_r - Obtenir le libelle d'un numero d'erreur

SYNOPSIS

       #include <string.h>

       char *strerror(int errnum);

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

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

   Exigences  de  macros  de  test de fonctionnalites pour 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
       Autrement, c'est la version GNU qui est fournie.

DESCRIPTION

       La fonction strerror() renvoie un pointeur vers une chaine  qui  decrit
       le  code d'erreur passe en argument errnum, en utilisant eventuellement
       la categorie LC_MESSAGES de la localisation pour selectionner la langue
       appropriee.  Cette  chaine ne doit pas etre modifiee par l'application,
       mais  peut  etre  ecrasee  par  un  appel  ulterieur  a  perror(3)   ou
       strerror().  Aucune  autre  fonction  de  bibliotheque ne modifie cette
       chaine.

       La fonction strerror_r() est identique  a  strerror()  mais  fonctionne
       correctement  dans  un  environnement  multithread.  Cette fonction est
       disponible en deux versions : une version conforme XSI  specifiee  dans
       POSIX.1-2001   (disponible  depuis  la  glibc  2.3.4)  et  une  version
       specifique GNU (disponible depuis la glibc 2.0). La version  compatible
       XSI  est fournie par la macro de test mentionnee dans le SYNOPSIS  sino
       la version specifique GNU est fournie. Si aucune macro  de  test  n'est
       definie  explicitement,  alors  (depuis la glibc 2.4) _POSIX_SOURCE est
       definie par defaut avec la  valeur  200112L,  de  telle  sorte  que  la
       version compatible XSI de strerror_r() est fournie par defaut.

       La   version  de  strerror_r()  conforme  XSI  est  preferee  pour  les
       applications portables. Elle renvoie la chaine dans le  tampon  buf  de
       longueur buflen fourni par l'appelant.

       La  version  de strerror_r() specifique GNU renvoie un pointeur sur une
       chaine contenant le message d'erreur. Cela peut etre soit  un  pointeur
       vers  une chaine que la fonction stocke dans buf, soit un pointeur vers
       une chaine statique (immuable) (auquel cas buf n'est pas  utilise).  Si
       la  fonction  stocke  une  chaine  dans buf, au plus buflen octets sont
       stockes (la chaine peut etre tronquee si buflen est trop petit)  et  la
       chaine inclut toujours l'octet nul de terminaison.

VALEUR RENVOY'EE

       La  fonction  strerror()  et  la fonction GNU strerror_r() renvoient la
       description correspondant au code transmis, ou  un  message  << Unknown
       error nnn >> si le numero d'erreur n'existe pas.

       La  fonction  strerror_r() conforme XSI renvoie 0 si elle reussit et -1
       si elle echoue et ecrit 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'E

       strerror() est specifiee par POSIX.1-2001, C89 et C99. strerror_r() est
       specifiee par POSIX.1-2001.

       La  fonction  strerror_r()  specifique  GNU  n'est  pas  une  extension
       standard.

       POSIX.1-2001 permet a strerror() d'ecrire errno  si  l'appel  rencontre
       une  erreur  mais  ne specifie pas quelle valeur devrait etre retournee
       comme  resultat  de  fonction  dans  l'eventualite  d'une  erreur.  Sur
       certains  systemes,  strerror()  renvoie NULL si le numero d'erreur est
       inconnu. Sur d'autres, strerror() renvoie une chaine du style  << Error
       nnn  occurred >>  et  ecrit EINVAL dans errno si le numero d'erreur est
       inconnu.

VOIR AUSSI

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

COLOPHON

       Cette page fait partie de  la  publication  3.27  du  projet  man-pages
       Linux.  Une description du projet et des instructions pour signaler des
       anomalies      peuvent      etre       trouvees       a       l'adresse
       <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION

       Depuis  2010,  cette  traduction est maintenue a l'aide de l'outil po4a
       <URL:http://po4a.alioth.debian.org/>   par   l'equipe   de   traduction
       francophone        au        sein        du       projet       perkamon
       <URL:http://perkamon.alioth.debian.org/>.

       Christophe Blaess  <URL:http://www.blaess.fr/christophe/>  (1996-2003),
       Alain  Portal  <URL:http://manpagesfr.free.fr/>  (2003-2006).   Nicolas
       Francois et l'equipe francophone de traduction de Debian (2006-2009).

       Veuillez  signaler  toute  erreur   de   traduction   en   ecrivant   a
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous pouvez toujours avoir acces a la version anglaise de  ce  document
       en utilisant la commande << man -L C <section> <page_de_man> >>.

                                 30 mars 2009                      STRERROR(3)