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

NAZWA

       readdir - odczytuje wpis w katalogu

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <sys/syscall.h>           /* Definicja stałych SYS_* */
       #include <unistd.h>

       int syscall(SYS_readdir, unsigned int fd,
                   struct old_linux_dirent *dirp, unsigned int count);

       Uwaga: Brak definicji struct old_linux_dirent; zob. UWAGI.

OPIS

       Nie  jest to funkcja, która cię interesuje. Opis implementacji interfejsu zgodnego z POSIX w bibliotece C
       znajduje się w readdir(3). Niniejsza strona opisuje goły interfejs wywołania  systemowego,  który  został
       zastąpiony przez getdents(2).

       readdir()  odczytuje  jedną strukturę old_linux_dirent z katalogu, na który wskazuje deskryptor pliku fd,
       do bufora, na który wskazuje dirp. Argument count jest ignorowany; odczytywana  jest  co  najwyżej  jedna
       struktura old_linux_dirent.

       Struktura old_linux_dirent jest zadeklarowana (prywatnie, w pliku jądra Linux fs/readdir.c) następująco:

           struct old_linux_dirent {
               unsigned long d_ino;     /* numer i-węzła */
               unsigned long d_offset;  /* offset do tego old_linux_dirent */
               unsigned short d_namlen; /* długość tego d_name */
               char  d_name[1];         /* nazwa pliku (zakończona znakiem NUL) */
           }

       d_ino  jest  numerem i-węzła. d_off jest odległością od początku katalogu do tego wpisu old_linux_dirent.
       d_reclen jest rozmiarem d_name, nie licząc kończącego znaku NUL ('\0'). d_name  jest  zakończoną  znakiem
       NUL nazwą pliku.

WARTOŚĆ ZWRACANA

       Po  pomyślnym  zakończeniu zwracane jest 1. Po natrafieniu na koniec katalogu zwracane jest 0. Po błędzie
       zwracane jest -1 i ustawiane errno wskazując błąd.

BŁĘDY

       EBADF  Nieprawidłowy deskryptor fd.

       EFAULT Argument wskazuje poza przestrzeń adresową wywołującego procesu.

       EINVAL Bufor na wynik jest za mały.

       ENOENT Nie ma takiego katalogu.

       ENOTDIR
              Deskryptor pliku nie odnosi się do katalogu.

WERSJE

       Konieczne jest samodzielne zdefiniowanie struktury old_linux_dirent. Powinno się jednak raczej  korzystać
       z readdir(3).

       To wywołanie systemowe nie istnieje na x86-64.

STANDARDY

       Linux.

ZOBACZ TAKŻE

       getdents(2), readdir(3)

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

Linux man-pages 6.8                              2 maja 2024 r.                                       readdir(2)