Provided by: manpages-fr-dev_3.65d1p1-1_all bug

NOM

       getpass - Obtenir un mot de passe (password)

SYNOPSIS

       #include <unistd.h>

       char *getpass( const char *prompt);

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

       getpass() :
           Depuis la glibc 2.2.2 :
               _BSD_SOURCE ||
                   (_XOPEN_SOURCE >= 500 ||
                       _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED) &&
                   !(_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600)
           Avant la glibc 2.2.2 :
               aucune

DESCRIPTION

       Cette fonction est obsolète. Ne l'utilisez pas. Si vous voulez lire une entrée de terminal
       sans écho local, consultez la description du drapeau ECHO dans termios(3).

       La  fonction  getpass()  ouvre /dev/tty (le terminal de contrôle du processus)  affiche le
       message d'accueil prompt, éteint l'écho local, lit une  ligne  (le  mot  de  passe),  puis
       restaure l'état de /dev/tty et le referme.

VALEUR RENVOYÉE

       La   fonction  getpass()  renvoie  un  pointeur  sur  une  chaîne  de  caractères  allouée
       statiquement contenant les PASS_MAX premiers caractères du mot de  passe  sans  le  retour
       chariot  final,  terminé  par un caractère nul (« \0 »). Ce tampon peut être écrasé par un
       autre appel. En cas d'erreur, l'état du terminal est restauré, errno  est  rempli,  et  la
       fonction renvoie NULL.

ERREURS

       La fonction peut échouer dans les cas suivants :

       ENXIO  Le processus n'a pas de terminal de contrôle.

FICHIERS

       /dev/tty

ATTRIBUTS

   Multithreading (voir pthreads(7))
       La fonction getpass() n'est pas sûre dans un contexte multithread.

CONFORMITÉ

       Présent dans SUSv2, mais marquée « LEGACY ». Supprimé de POSIX.1-2001.

NOTES

       Dans  les  versions  libc4  et  libc5,  le message n'est pas affiché sur /dev/tty mais sur
       stderr. De plus, si /dev/tty ne peut être ouvert, le mot de passe est lu depuis stdin.  Le
       tampon  statique  a  une  longueur de 128 octets, aussi seulement 127 caractères du mot de
       passe sont renvoyés. Durant la lecture, les signaux (SIGINT,  SIGQUIT,  SIGSTOP,  SIGTSTP)
       sont  désactivés  et  les caractères de contrôle correspondant (en général Ctrl-C, Ctrl-\,
       Ctrl-Z et Ctrl-Y) sont  transmis  comme  part  intégrante  du  mot  de  passe.  Depuis  la
       libc 5.4.19,  l'édition  de ligne est également désactivée, ainsi les retours en arrières,
       etc., seront présents dans le mot de passe.

       Pour la glibc2, si /dev/tty ne peut pas être ouvert, le message est envoyé sur  stderr  et
       le  mot  de  passe  lu  sur  stdin.  Il n'y a pas de limite à la longueur du mot de passe.
       L'édition de ligne n'est pas désactivée.

       D'après SUSv2, la valeur de PASS_MAX doit être définie dans <limits.h> au cas où elle  est
       inférieure  à 8, et doit toujours être accessible avec sysconf(_SC_PASS_MAX). Quoiqu'il en
       soit, POSIX.2 retire les constantes  PASS_MAX  et  _SC_PASS_MAX,  ainsi  que  la  fonction
       getpass(). Les bibliothèques libc4 et libc5 n'ont jamais géré PASS_MAX ou _SC_PASS_MAX. La
       glibc2 accepte _SC_PASS_MAX et renvoie BUFSIZ (par exemple, 8192).

BOGUES

       Le processus appelant doit effacer le mot de passe saisi aussi  vite  que  possible,  afin
       d'éviter d'en conserver une copie en texte clair dans son espace d'adressage.

VOIR AUSSI

       crypt(3)

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). Florentin  Duneau  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> ».