Provided by: manpages-pl-dev_4.23.1-1_all bug

NAZWA

       getpwent, setpwent, endpwent - pobiera wpis z pliku haseł

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <sys/types.h>
       #include <pwd.h>

       struct passwd *getpwent(void);
       void setpwent(void);
       void endpwent(void);

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

       getpwent(), setpwent(), endpwent():
           _XOPEN_SOURCE >= 500
               || /* glibc >= 2.19: */ _DEFAULT_SOURCE
               || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

OPIS

       Funkcja  getpwent()  zwraca  wskaźnik do struktury, zawierającej poszczególne rekordy bazy
       danych haseł (na przykład z lokalnego pliku haseł /etc/passwd, NIS-a lub LDAP-a).  Podczas
       pierwszego wywołania getpwent() zwracany jest pierwszy wpis; później zwracane są kolejne.

       Funkcja setpwent() ustawia wskaźnik pliku na początek pliku bazy danych haseł.

       Funkcja   endpwent()  jest  używana  do  zamknięcia  bazy  danych  haseł  użytkowników  po
       zakończeniu jej przetwarzania.

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

       Jeśli włączone są zaciemniane (shadow(5)) hasła (a  na  wielu  instalacjach  GNU/Linux  są
       domyślnie  włączone)  zawartość  pola pw_passwd nie jest zbyt użyteczna. W takim przypadku
       większość haseł jest przechowywana w osobnym pliku.

       Zmienna pw_shell może być pusta, co oznacza, że system uruchomi domyślną powłokę logowania
       użytkownika (/bin/sh).

       Więcej informacji o polach w tej strukturze można znaleźć w podręczniku passwd(5).

WARTOŚĆ ZWRACANA

       Funkcja  getpwent()  zwraca  wskaźnik  do  struktury passwd albo NULL, jeśli nie ma więcej
       wpisów lub gdy wystąpił błąd. W przypadku wystąpienia błędu ustawia errno, wskazując błąd.
       Aby  móc  sprawdzić  errno po wywołaniu tej funkcji, należy ją przed wywołaniem ustawić na
       zero.

       Zwrócona wartość może wskazywać na  statyczny  obszar,  który  może  być  nadpisany  przez
       kolejne wywołania getpwent(), getpwnam(3) lub getpwuid(3) (zwróconego wskaźnika nie należy
       przekazywać do funkcji free(3)).

BŁĘDY

       EINTR  Przechwycono sygnał, patrz signal(7).

       EIO    Błąd wejścia/wyjścia.

       EMFILE Zostało  osiągnięte  ograniczenie  na  liczbę  otwartych  deskryptorów  plików  dla
              procesu.

       ENFILE Zostało osiągnięte systemowe ograniczenie na całkowitą liczbę otwartych plików.

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

       ERANGE Przekazano niewystarczający bufor.

PLIKI

       /etc/passwd
              lokalny plik bazy z hasłami

ATRYBUTY

       Informacje   o   pojęciach   używanych   w  tym  rozdziale  można  znaleźć  w  podręczniku
       attributes(7).

       ┌───────────────────────┬────────────────────────┬────────────────────────────────────────┐
       │InterfejsAtrybutWartość                                │
       ├───────────────────────┼────────────────────────┼────────────────────────────────────────┤
       │getpwent()             │ Bezpieczeństwo wątkowe │ MT-niebezpieczne race:pwent            │
       │                       │                        │ race:pwentbuf locale                   │
       ├───────────────────────┼────────────────────────┼────────────────────────────────────────┤
       │setpwent(), endpwent() │ Bezpieczeństwo wątkowe │ MT-niebezpieczne race:pwent locale     │
       └───────────────────────┴────────────────────────┴────────────────────────────────────────┘
       W  powyższej  tabeli,  pwent  w  race:pwent oznacza, że jeśli któraś z funkcji setpwent(),
       getpwent() lub endpwent()  jest  używana  równolegle  w  różnych  wątkach  programu,  może
       nastąpić sytuacja wyścigu danych.

WERSJE

       Pole  pw_gecos  nie  jest  wymienione  w standardzie POSIX, ale większość implementacji je
       zawiera.

STANDARDY

       POSIX.1-2008.

HISTORIA

       POSIX.1-2001, SVr4, 4.3BSD.

ZOBACZ TAKŻE

       fgetpwent(3), getpw(3), getpwent_r(3), getpwnam(3), getpwuid(3),  putpwent(3),  shadow(5),
       passwd(5)

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>,  Robert  Luberda
       <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

       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⟩.