fgetpwent − pobranie wpisu z pliku haseł
#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
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 */
};
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.
ENOMEM |
Zabrakło pamięci na przydzielenie struktury passwd. |
/etc/passwd
baza danych o hasłach
SVr4.
endpwent(3), fgetpwent_r(3), fopen(3), getpw(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), passwd(5)
Angielska wersja tej strony pochodzi z wydania 4.07 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/.
Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Adam Byrtek (PTM) <alpha AT irc DOT pl>, Andrzej M. Krzysztofowicz (PTM) <ankry AT green DOT mf DOT pg DOT gda DOT pl> i Robert Luberda <robert AT debian DOT org>.
Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 4.07 oryginału.