fgetpwent(3)

NAZWA
fgetpwent - pobiera wpis z pliku haseł

BIBLIOTEKA
Standardowa biblioteka C (libc, -lc)

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 podzielony na pola wiersz 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 błąd.

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-niebezpieczne race:fgetpwent

STANDARDY
Brak.

HISTORIA
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)

TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika: 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 (https://www.gnu.org/licenses/gpl-3.0.html) 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.