READDIR
Section: Manuel du programmeur Linux (2) Updated: 18 juillet 2003 Index
NOM
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
CONFORMITÉ
VOIR AUSSI
TRADUCTION
NOM
readdir - Lire une entrée de répertoire.
SYNOPSIS
#include <unistd.h>
#include <linux/dirent.h>
#include <linux/unistd.h>
_syscall3(int, readdir, uint, fd, struct dirent *, dirp, uint, count);
int readdir(unsigned int fd, struct dirent *dirp, unsigned int count);
DESCRIPTION
Cette fonction n'est normalement pas intéressante
pour les programmeurs.
Utiliser
readdir(3)
pour les fonctionnalités conformes POSIX.
Cette page documente l'interface de l'appel système bas-niveau,
qui peut changer, et qui est remplacée par
getdents(2).
readdir
lit une structure
dirent
depuis le répertoire pointé par
fd
et la place en mémoire dans la zone pointée par
dirp.
Le paramètre
count
est ignoré, au plus une structure dirent est lue.
La structure
dirent
est déclarée comme suit :
-
struct dirent
{
long d_ino; /* inode number */
off_t d_off; /* offset to this dirent */
unsigned short d_reclen; /* length of this d_name */
char d_name [NAME_MAX+1]; /* file name (null-terminated) */
}
d_ino
est un numéro d'i-node.
d_off
est la distance entre le début du répertoire et cette
structure
dirent.
d_reclen
est la longueur
d_name,
sans compter le caractère nul final.
d_name
est le nom de fichier terminé par un caractère nul.
VALEUR RENVOYÉE
readdir
renvoie 1 s'il réussit, 0 en fin de répertoire, ou -1 s'il échoue,
auquel cas
errno
contient le code d'erreur.
ERREURS
- EBADF
-
fd
est invalide.
- EFAULT
-
L'argument pointe en dehors de l'espace d'adressage.
- EINVAL
-
Le buffer de résultat est trop petit.
- ENONENT
-
Répertoire inexistant.
- ENOTDIR
-
Le descripteur est associé à un fichier, pas à un répertoire.
CONFORMITÉ
Cet appel-système est spécifique à Linux.
VOIR AUSSI
TRADUCTION
Christophe Blaess, 1996-2003.
|