FGETPWENT(3)

NAZWA
fgetpwent - pobranie wpisu z pliku haseł

SKŁADNIA
#include <stdio.h>
#include <sys/types.h>
#include <pwd.h>

struct passwd *fgetpwent(FILE *stream);

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

fgetpwent():
    Od glibc 2.19:
        _DEFAULT_SOURCE
    Glibc 2.19 i wcześniejsze:
        _SVID_SOURCE

OPIS
Funkcja fgetpwent() zwraca wskaźnik do struktury zawierającej podzieloną na pola linię z pliku stream. Po pierwszym wywołaniu zwraca pierwszą pozycję, później zwraca kolejne. Plik, do którego odnosi się strumień stream, musi mieć taki sam format, jak /etc/passwd (patrz passwd(5)).

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 */
    };

WARTOŚĆ ZWRACANA
Funkcja fgetpwent() zwraca wskaźnik do struktury passwd lub NULL, gdy nie ma więcej wpisów lub gdy wystąpił błąd. W przypadku wystąpienia błędu ustawia errno, wskazując na przyczynę błędu.

BŁĘDY

ENOMEM
    Zabrakło pamięci na przydzielenie struktury passwd.

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ść
fgetpwent() | Bezpieczeństwo wątkowe | MT-Unsafe race:fgetpwent

ZGODNE Z
SVr4.

ZOBACZ TAKŻE
endpwent(3), fgetpwent_r(3), fopen(3), getpw(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), passwd(5)

O STRONIE
Angielska wersja tej strony pochodzi z wydania 5.08 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ą: Adam Byrtek <alpha@irc.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 <manpages-pl-list@lists.sourceforge.net>.