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