Provided by: manpages-fr-dev_3.32d0.2p4-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.

       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

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.32  du  projet  man-pages
       Linux.  Une description du projet et des instructions pour signaler des
       anomalies      peuvent      être       trouvées       à       l'adresse
       <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION

       Depuis  2010,  cette  traduction est maintenue à l'aide de l'outil po4a
       <URL:http://po4a.alioth.debian.org/>   par   l'équipe   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). 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> ».