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

NOM

       getpass - Saisie d’un mot de passe (password).

SYNOPSIS

       #include <unistd.h>

       char *getpass( const char * prompt );

DESCRIPTION

       Cette fonction est obsolète, ne l’utilisez pas.

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

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,
       SIGTSTOP) 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 2.80 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

       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 Florentin Duneau <fduneau@gmail.com> 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> ».