readdir - lees een map ingang
Standard C bibliotheek (libc, -lc)
#include <sys/syscall.h> /* Definitie van SYS_* constanten */
#include <unistd.h>
int syscall(SYS_readdir, unsigned int bes_ind,
struct old_linux_dirent *dirp, unsigned int tel); Let op: Er is geen definitie van struct old_linux_dirent; zie OPMERKINGEN.
Dit is niet de functie waar je in geïnteresseerd bent. Kijk naar readdir(3)EN voor de met POSIX overeenstemmende C bibliotheek interfaces. Deze pagina beschrijft de kale kernel systeem aanroep interface, die kan veranderen en die wordt overstegen door getdents(2)EN.
readdir() leest één old_linux_dirent structuur van de map waarnaar gewezen wordt door bes_ind naar het geheugen gebied waarnaar gewezen wordt door mapw. De grootheid tel wordt genegeerd; hoogstends één dirent structuur wordt gelezen.
De old_linux_dirent structuur is als volgt gedeclareerd (privé in het Linux kernel bestand /fs/readdir.c) :
struct old_linux_dirent {
unsigned long d_ino; /* »inode« nummer */
unsigned long d_offset; /* verschuiving naar old_linux_dirent */
unsigned short d_namlen; /* lengte van dit d_name */
char d_name[1]; /* bestandsnaam (eindigend op nul) */
}
d_ino is een »inode« nummer. d_off is de afstand van het begin van de map naar deze old_linux_dirent. d_reclen is is de maat van d_name, de nul beeindiger ('\0') niet meerekenend. d_name is een nul-beëindigde bestandsnaam.
Bij succes wordt 1 teruggegeven. Bij het einde van de map wordt 0 teruggegeven. Bij falen wordt -1 teruggegeven, en wordt errno overeenkomstig gezet.
- EBADF
- Ongeldige bestandindicator bes_ind.
- EFAULT
- Argument wijst buiten de adres ruimte van het aanroepende proces.
- EINVAL
- Resultaat buffer is te klein.
- ENOENT
- Niet zo'n map.
- ENOTDIR
- Bestandindicator wijst niet naar een map.
Deze systeem aanroep is Linux-specifiek.
U zult de old_linux_dirent structure zelf moeten definiëren. Hoewel u in dat geval beter readdir(3)EN kunt gebruiken.
Deze systeem aanroep bestaat niet op x86-64.
De Nederlandse vertaling van deze handleiding is geschreven door Jos Boersema <joshb@xs4all.nl>, Mario Blättermann <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>
Deze vertaling is vrije documentatie; lees de GNU General Public License Version 3 of later over de Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.
Indien U fouten in de vertaling van deze handleiding zou vinden, stuur een e-mail naar debian-l10n-dutch@lists.debian.org.