Manpages

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 (consulter feature_test_macros(7)) :

getpass() :

Depuis glibc 2.2.2:

_XOPEN_SOURCE && ! (_POSIX_C_SOURCE >= 200112L)
|| /* Glibc since 2.19: */ _DEFAULT_SOURCE
|| /* Glibc versions <= 2.19: */ _BSD_SOURCE

Avant la glibc 2.2.2 :

aucun

DESCRIPTION

Cette fonction est obsolète. Ne l’utilisez pas. Si vous voulez lire une entrée de terminal sans écho local, consultez la description du drapeau ECHO dans termios(3).

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

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes(7).

CONFORMITÉ

Présent dans SUSv2, mais marquée « LEGACY ». Supprimé de POSIX.1-2001.

NOTES

In the GNU C library implementation, if /dev/tty cannot be opened, the prompt is written to stderr and the password is read from stdin. There is no limit on the length of the password. Line editing is not disabled.

According to SUSv2, the value of PASS_MAX must be defined in <limits.h> in case it is smaller than 8, and can in any case be obtained using sysconf(_SC_PASS_MAX). However, POSIX.2 withdraws the constants PASS_MAX and _SC_PASS_MAX, and the function getpass(). The glibc version accepts _SC_PASS_MAX and returns BUFSIZ (e.g., 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 5.07 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page, peuvent être trouvées à l’adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>;, Stéphan Rafin <stephan.rafin [AT] laposte.net>, Thierry Vignaud <tvignaud [AT] mandriva.com>, François Micaux, Alain Portal <aportal [AT] univ-montp2.fr>, Jean-Philippe Guérard <fevrier [AT] tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon [AT] wanadoo.fr>, Julien Cristau <jcristau [AT] debian.org>, Thomas Huriaux <thomas.huriaux [AT] gmail.com>, Nicolas François <nicolas.francois [AT] centraliens.net>, Florentin Duneau <fduneau [AT] gmail.com>, Simon Paillard <simon.paillard [AT] resel.fr>, Denis Barbier <barbier [AT] debian.org> et David Prévot <david [AT] tilapin.org>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n’y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à <debian-l10n-french [AT] lists.org>.