Provided by:
manpages-fr_1.67.0-1_all 
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 restore 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ère du) mot
de passe sans le retour chariot final, terminé par un caractère nul.
Ce buffer 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.
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 buffer statique a une longueur de
128 octets, aussi seulement 127 carctères du mot de passe sont
renvoyés. Durant la lecture, les signaux (SIGINT, SIGQUIT, SIGSTOP)
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 LibC5.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 GlibC 2, 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 être toujours 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 ().
LibC 4 et LibC5 n’ont jamais utilisé PASS_MAX ou _SC_PASS_MAX. GlibC 2
accepte _SC_PASS_MAX et renvoie BUFSIZ (par exemple 8192).
FICHIERS
/dev/tty
VOIR AUSSI
crypt(3)
HISTORIQUE
Une fonction getpass est apparue dans la Version 7 d’AT&T UNIX.
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.
TRADUCTION
Christophe Blaess, 1996-2003.