Man page - getpass(3)

Packages contains this manual

Available languages:

en fr es pl ja ru ro de

Manual

getpass

NAZWA
BIBLIOTEKA
SKŁADNIA
OPIS
WARTOŚĆ ZWRACANA
BŁĘDY
PLIKI
ATRYBUTY
STANDARDY
HISTORIA
UWAGI
USTERKI
ZOBACZ TAKŻE
TŁUMACZENIE

NAZWA

getpass - wczytuje hasło

BIBLIOTEKA

Standardowa biblioteka C ( libc , -lc )

SKŁADNIA

#include <unistd.h>

[[przestarzałe]] char *getpass(const char * prompt );

Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros (7)):

getpass ():
Od glibc 2.2.2:
_XOPEN_SOURCE && ! (_POSIX_C_SOURCE >= 200112L)
|| /* glibc >= 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE
Przed glibc 2.2.2:
brak

OPIS

Funkcja ta jest przestarzała. Nie należy jej używać — zob. UWAGI. Informacje o tym, jak odczytać dane z terminala bez ich wyświetlania na nim można znaleźć w opisie znacznika ECHO w podręczniku termios (3).

Funkcja getpass () otwiera /dev/tty (terminal sterujący procesu), wypisuje łańcuch prompt , wyłącza echo, odczytuje jeden wiersz („hasło”), odtwarza stan terminala i zamyka /dev/tty .

WARTOŚĆ ZWRACANA

Funkcja getpass () zwraca wskaźnik do statycznego bufora zawierającego hasło (pierwsze PASS_MAX bajtów) bez kończącego znaku nowego wiersza, zakończone bajtem null ('\0'). Bufor ten może zostać nadpisany przez późniejsze wywołania funkcji. W przypadku błędu, odtwarzany jest stan terminala, ustawiane errno , wskazując błąd i zwracane NULL.

BŁĘDY

ENXIO

Proces nie ma terminala sterującego.

PLIKI

/dev/tty

ATRYBUTY

Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes (7).

Image grohtml-3997239-1.png

STANDARDY

Brak.

HISTORIA

Wersja 7 AT&T UNIX. Obecna w SUSv2, ale uważana za przestarzałe. Usunięta z POSIX.1-2001.

UWAGI

Należy w zamian używać readpassphrase (3bsd), udostępnianej przez libbsd .

W implementacji biblioteki GNU C jeśli nie można otworzyć /dev/tty , to tekst zachęty jest wypisywany na stderr , a hasło jest odczytywane z stdin . Nie ma natomiast ograniczenia na długość hasła. Nie jest wyłączona edycja linii.

Zgodnie z SUSv2 jeśli wartość PASS_MAX jest mniejsza niż 8, to musi być zdefiniowana w <limits.h> , a w każdym przypadku można ją otrzymać za pomocą sysconf(_SC_PASS_MAX) . Jednakże, POSIX.2 odchodzi od stałych PASS_MAX i _SC_PASS_MAX oraz od funkcji getpass (). Wersja glibc akceptuje _SC_PASS_MAX i zwraca BUFSIZ (np. 8192).

USTERKI

Proces wywołujący funkcję powinien wyzerować hasło natychmiast, gdy tylko będzie to możliwe, aby uniknąć pozostawiania niezaszyfrowanego hasła w przestrzeni adresowej procesu.

ZOBACZ TAKŻE

crypt (3)

TŁUMACZENIE

Tłumaczenie niniejszej strony podręcznika: Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net .