Provided by: manpages-pl-dev_4.26.0-1_all 

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).
┌──────────────────────────────────────────────────────┬────────────────────────┬───────────────────────┐
│ Interfejs │ Atrybut │ Wartość │
├──────────────────────────────────────────────────────┼────────────────────────┼───────────────────────┤
│ getpass() │ Bezpieczeństwo wątkowe │ MT-niebezpieczne term │
└──────────────────────────────────────────────────────┴────────────────────────┴───────────────────────┘
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
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: 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.
Linux man-pages 6.9.1 15 czerwca 2024 r. getpass(3)