focal (3) getpass.3.gz

Provided by: manpages-pl-dev_0.7-2_all bug

NAZWA

       getpass - wczytanie hasła

SKŁADNIA

       #include <unistd.h>

       char *getpass( const char * prompt );

OPIS

        Uwaga! To tłumaczenie może być nieaktualne!

       Funkcja ta jest przestarzała. Nie należy jej używać.

       Funkcja  getpass()  otwiera /dev/tty (terminal sterujący procesu), wyprowadza napis prompt, wyłącza echo,
       odczytuje jedną linię ("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  nowej linii, zakończone znakiem NUL.  Bufor ten może zostać nadpisany przez późniejsze
       wywołania funkcji.  W przypadku błędu, odtwarzany jest stan terminala,  odpowiednio  ustawiane  errno,  i
       zwracane NULL.

BŁĘDY

       Funkcja może zakończyć się niepomyślnie, gdy

       ENXIO  Proces nie posiada terminala sterującego.

UWAGI

       Dla  libc4  i  libc5  tekst  zachęty ("prompt") nie jest wypisywany na /dev/tty, ale na stderr.  Ponadto,
       jeśli nie można otworzyć /dev/tty, to hasło jest odczytywane z stdin.  Bufor statyczny  ma  długość  128,
       więc  zwracanych  jest  tylko  pierwszych  127  bajtów  hasła.  Podczas odczytywania hasła wyłączone jest
       generowanie sygnałów (SIGINT, SIGQUIT, SIGSTOP, SIGTSTOP), a odpowiadające im  znaki  (zwykle  control-C,
       control-\,  control-Z  i  control-Y) są przesyłane jako część hasła.  Począwszy od libc 5.4.19, wyłączona
       jest edycja linii, tak więc również cofanie (backspace) i jemu podobne będą widziane jako część hasła.

       Dla glibc2, 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. Wyłączona jest 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 ().  Libc4 i libc5 nigdy nie wspierały PASS_MAX
       ani _SC_PASS_MAX.  Glibc2 akceptuje _SC_PASS_MAX i zwraca BUFSIZ (np. 8192).

PLIKI

       /dev/tty

ZOBACZ TAKŻE

       crypt(3)

HISTORIA

       Funkcja getpass pojawiła się w Wersji 7 AT&T UNIX.

USTERKI

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

INFORMACJE O TŁUMACZENIU

       Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne.
       W razie zauważenia różnic między powyższym opisem a rzeczywistym  zachowaniem  opisywanego  programu  lub
       funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:

              man --locale=C 3 getpass

       Prosimy   o   pomoc   w   aktualizacji   stron   man  -  więcej  informacji  można  znaleźć  pod  adresem
       http://sourceforge.net/projects/manpages-pl/.