table of contents
        
      
      
    | GETPW(3) | Podręcznik programisty Linuksa | GETPW(3) | 
NAZWA¶
getpw - rekonstrukcja wpisu z pliku passwd.
SKŁADNIA¶
#define _GNU_SOURCE /* See feature_test_macros(7) */ #include <sys/types.h> #include <pwd.h>
int getpw(uid_t uid, char *buf);
OPIS¶
Funkcja getpw() rekonstruuje linię wpisu w pliku passwd dla użytkownika określonego przez uid. Wynik jest zapisywany do bufora buf. Zwrócony bufor zawiera linię postaci:
  
name:passwd:uid:gid:gecos:dir:shell
Struktura passwd jest następująco zdefiniowana w pliku <pwd.h>:
  
struct passwd {
    char   *pw_name;       /* nazwa użytkownika */
    char   *pw_passwd;     /* hasło użytkownika */
    uid_t   pw_uid;        /* identyfikator użytkownika */
    gid_t   pw_gid;        /* identyfikator grupy */
    char   *pw_gecos;      /* informacje o użytkowniku */
    char   *pw_dir;        /* katalog domowy */
    char   *pw_shell;      /* program powłoki */
};
Więcej informacji o polach w tej strukturze można znaleźć w podręczniku passwd(5).
WARTOŚĆ ZWRACANA¶
Po pomyślnym zakończeniu getpw() zwraca zero, po błędzie zwraca -1 i odpowiednio ustawia errno, wskazując na rodzaj błędu.
Jeśli w bazie danych haseł nie znaleziono identyfikatora uid, to getpw() zwraca -1, ustawia errno na 0 i pozostawia buf w stanie niezmienionym.
BŁĘDY¶
PLIKI¶
- /etc/passwd
- baza danych o hasłach
ATRYBUTY¶
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
| Interfejs | Atrybut | Wartość | 
| getpw() | Bezpieczeństwo wątkowe | MT-Safe locale | 
ZGODNE Z¶
SVr2.
BŁĘDY¶
Funkcja getpw() jest niebezpieczna, gdyż może przepełnić udostępniony bufor buf. Została zastąpiona przez getpwuid(3).
ZOBACZ TAKŻE¶
endpwent(3), fgetpwent(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), passwd(5)
O STRONIE¶
Angielska wersja tej strony pochodzi z wydania 4.16 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.
TŁUMACZENIE¶
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys@dione.ids.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl> i Robert Luberda <robert@debian.org>
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.
| 15 września 2017 r. | GNU |