getpass

Table des matières
Retour à l'index

 

NOM

getpass - Obtenir un mot de passe  

BIBLIOTHÈQUE

Bibliothèque C standard (libc, -lc)  

SYNOPSIS

#include <unistd.h>

[[obsolète]] char *getpass(const char *invite);

Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

getpass() :

    Depuis la glibc 2.2.2 :
        _XOPEN_SOURCE && ! (_POSIX_C_SOURCE >= 200112L)
            || /* Depuis la glibc 2.19 : */ _DEFAULT_SOURCE
            || /* glibc 2.19 et précédentes : */ _BSD_SOURCE
    Avant la glibc 2.2.2 :
        aucune
 

DESCRIPTION

Cette fonction est obsolète. Ne l'utilisez pas. Voir les NOTES. Si vous voulez lire une saisie 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 l'invite, désactive l'écho local, lit une ligne de saisie (le mot de passe), puis restaure l'état du terminal et referme /dev/tty.  

VALEUR RENVOYÉE

The function getpass() returns a pointer to a static buffer containing (the first PASS_MAX bytes of) the password without the trailing newline, terminated by a null byte ('\0'). This buffer may be overwritten by a following call. On error, the terminal state is restored, errno is set to indicate the error, and NULL is returned.  

ERREURS

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).
InterfaceAttributValeur
getpass() Sécurité des threadsMT-Unsafe term
 

STANDARDS

Aucun.  

HISTORIQUE

Version 7 AT&T UNIX. Présente dans SUSv2, mais marquée « LEGACY ». Supprimée de POSIX.1-2001.  

NOTES

Vous devriez plutôt utiliser la fonction readpassphrase(3bsd) fournie par la bibliothèque libbsd.

Dans l'implémentation de la bibliothèque GNU C, si /dev/tty ne peut pas être ouvert, l'invite est envoyée sur stderr et le mot de passe est lu depuis 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> dans le cas où elle est inférieure à 8, et peut toujours être accessible en utilisant sysconf(_SC_PASS_MAX). Quoiqu'il en soit, POSIX.2 retire les constantes PASS_MAX et _SC_PASS_MAX, ainsi que la fonction getpass(). La version de la glibc 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 l'espace d'adressage du processus.  

VOIR AUSSI

crypt(3)

 

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>, David Prévot <david@tilapin.org> et Lucien Gentis <lucien.gentis@waika9.com>

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 à


 

Index

NOM
BIBLIOTHÈQUE
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
FICHIERS
ATTRIBUTS
STANDARDS
HISTORIQUE
NOTES
BOGUES
VOIR AUSSI
TRADUCTION

This document was created by man2html, using the manual pages.
Time: 05:06:15 GMT, September 19, 2025