GETPASS(3)

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).
Interface | Attribut | Valeur
getpass() | Sécurité des threads | MT-Unsafe term

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.08 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@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org> et David Prévot <david@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@lists.debian.org>.