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