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

NAZWA

       getpw - rekonstruuje wpis z pliku haseł

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #define _GNU_SOURCE             /* Zob. feature_test_macros(7) */
       #include <sys/types.h>
       #include <pwd.h>

       [[przestarzałe]] int getpw(uid_t uid, char *buf);

OPIS

       Funkcja getpw() rekonstruuje linię wpisu w pliku passwd dla użytkownika określonego przez uid. Wynik jest
       zapisywany do bufora buf. Zwrócony bufor zawiera linię postaci:

           name:passwd:uid:gid:gecos:dir:shell

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

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

WARTOŚĆ ZWRACANA

       Po pomyślnym zakończeniu getpw() zwraca zero, po błędzie zwraca -1 i odpowiednio ustawia errno, wskazując
       na rodzaj błędu.

       Jeśli  w bazie danych haseł nie znaleziono identyfikatora uid, to getpw() zwraca -1, ustawia errno na 0 i
       pozostawia buf w stanie niezmienionym.

BŁĘDY

       0 lub ENOENT
              Brak użytkownika odpowiadającego identyfikatorowi uid.

       EINVAL buf ma wartość NULL.

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

       ┌────────────────────────────────────────────────────────┬────────────────────────┬──────────────────────┐
       │InterfejsAtrybutWartość              │
       ├────────────────────────────────────────────────────────┼────────────────────────┼──────────────────────┤
       │getpw()                                                 │ Bezpieczeństwo wątkowe │ MT-bezpieczne locale │
       └────────────────────────────────────────────────────────┴────────────────────────┴──────────────────────┘

STANDARDY

       Brak.

HISTORIA

       SVr2.

USTERKI

       Funkcja getpw() jest niebezpieczna, gdyż może przepełnić udostępniony bufor buf. Została zastąpiona przez
       getpwuid(3).

ZOBACZ TAKŻE

       endpwent(3), fgetpwent(3), getpwent(3), getpwnam(3), getpwuid(3), putpwent(3), setpwent(3), 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> 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⟩.