readdir

READDIR(2)               Podręcznik programisty Linuksa               READDIR(2)



NAZWA
       readdir - odczytanie wpisu w katalogu

SKŁADNIA
       int readdir(unsigned int fd, struct old_linux_dirent *dirp,
                   unsigned int count);

       Uwaga: Do tego wywołania systemowego brak opakowania glibc, zob. UWAGI.

OPIS
       This is not the function you are interested in.  Look at readdir(3)  for
       the POSIX conforming C library interface.  This page documents the bare
       kernel system call interface, which is superseded by getdents(2).

       readdir()  reads one old_linux_dirent structure from the directory
       referred to by the file descriptor fd into the buffer pointed to by dirp.
       The argument count is ignored; at most one old_linux_dirent structure is
       read.

       The old_linux_dirent structure is declared (privately in Linux kernel
       file fs/readdir.c)  as follows:

           struct old_linux_dirent {
               unsigned long d_ino;     /* inode number */
               unsigned long d_offset;  /* offset to this old_linux_dirent */
               unsigned short d_namlen; /* length of this d_name */
               char  d_name[1];         /* filename (null-terminated) */
           }

       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. d_name jest zakończoną znakiem NUL nazwą
       pliku.

WARTOŚĆ ZWRACANA
       On success, 1 is returned.  On end of directory, 0 is returned.  On
       error, -1 is returned, and errno is set to indicate the error.

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
              Deksryptor pliku nie odnosi się do katalogu.

ZGODNE Z
       Tp wywołanie systemowe jest specyficzne dla Linuksa.

UWAGI
       Glibc does not provide a wrapper for this system call; call it using
       syscall(2).  You will need to define the old_linux_dirent structure
       yourself.  However, probably you should use readdir(3)  instead.

       This system call does not exist on x86-64.

ZOBACZ TAKŻE
       getdents(2), readdir(3)

O STRONIE
       Angielska wersja tej strony pochodzi z wydania 5.11 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/.


TŁUMACZENIE
       Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek
       Borys <pborys@dione.ids.pl> i Andrzej Krzysztofowicz
       <ankry@green.mf.pg.gda.pl>

       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
       manpages-pl-list@lists.sourceforge.net ⟨⟩.



Linux                           22 marca 2021 r.                      READDIR(2)