Scroll to navigation

FGETPWENT(3) Podręcznik programisty Linuksa 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

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.10 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 listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

2 lutego 2018 r. GNU