Provided by:
manpages-fr-dev_3.32d0.2p4-1_all 
NOM
getpass - Obtenir un mot de passe (password)
SYNOPSIS
#include <unistd.h>
char *getpass( const char *prompt);
Exigences de macros de test de fonctionnalites 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 obsolete, ne l'utilisez pas.
La fonction getpass() ouvre /dev/tty (le terminal de controle du
processus) affiche le message d'accueil prompt, eteint l'echo local,
lit une ligne (le mot de passe), puis restaure l'etat de /dev/tty et le
referme.
VALEUR RENVOY'EE
La fonction getpass() renvoie un pointeur sur une chaine de caracteres
allouee statiquement contenant les PASS_MAX premiers caracteres du mot
de passe sans le retour chariot final, termine par un caractere nul
(<< \0 >>). Ce tampon peut etre ecrase par un autre appel. En cas
d'erreur, l'etat du terminal est restaure, errno est rempli, et la
fonction renvoie NULL.
ERREURS
La fonction peut echouer dans les cas suivants :
ENXIO Le processus n'a pas de terminal de controle.
FICHIERS
/dev/tty
CONFORMIT'E
Present dans SUSv2, mais marquee << LEGACY >>. Supprime de
POSIX.1-2001.
NOTES
Dans les versions libc4 et libc5, le message n'est pas affiche sur
/dev/tty mais sur stderr. De plus, si /dev/tty ne peut etre ouvert, le
mot de passe est lu depuis stdin. Le tampon statique a une longueur de
128 octets, aussi seulement 127 caracteres du mot de passe sont
renvoyes. Durant la lecture, les signaux (SIGINT, SIGQUIT, SIGSTOP,
SIGTSTP) sont desactives et les caracteres de controle correspondant
(en general Ctrl-C, Ctrl-\, Ctrl-Z et Ctrl-Y) sont transmis comme part
integrante du mot de passe. Depuis la libc 5.4.19, l'edition de ligne
est egalement desactivee, ainsi les retours en arrieres, etc., seront
presents dans le mot de passe.
Pour la glibc2, si /dev/tty ne peut pas etre ouvert, le message est
envoye sur stderr et le mot de passe lu sur stdin. Il n'y a pas de
limite a la longueur du mot de passe. L'edition de ligne n'est pas
desactivee.
D'apres SUSv2, la valeur de PASS_MAX doit etre definie dans <limits.h>
au cas ou elle est inferieure a 8, et doit toujours etre 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 bibliotheques libc4 et libc5 n'ont jamais gere 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'eviter 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 etre trouvees a l'adresse
<URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION
Depuis 2010, cette traduction est maintenue a l'aide de l'outil po4a
<URL:http://po4a.alioth.debian.org/> par l'equipe 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'equipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en ecrivant a
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir acces a la version anglaise de ce document
en utilisant la commande << man -L C <section> <page_de_man> >>.