READDIR
NAME SYNOPSIS DESCRIPTION RETURN VALUE ERRORS CONFORMING TO BUGS SEE ALSO
readdir - read a directory
#include dir);
The readdir() function returns a pointer to a dirent structure representing the next directory entry in the directory stream pointed to by dir. It returns NULL on reaching the end-of-file or if an error occurred.
The data returned by readdir() is overwritten by subsequent calls to readdir() for the same directory stream.
The dirent structure is defined as follows:
struct dirent { long d_ino; /* inode number / off_t d_off; / offset to the next dirent / unsigned short d_reclen;/ length of this record / unsigned char d_type; / type of file / char d_name[256?; / filename */ };
The readdir() function returns a pointer to a dirent structure, or NULL if an error occurs or end-of-file is reached.
EBADF
Invalid directory stream descriptor dir.
SVID 3, POSIX, BSD 4.3
According to POSIX, the dirent structure contains a field char d_name[? of unspecified size, with at most NAME_MAX characters preceding the terminating null character. Use of other fields will harm the portability of your programs.
Field d_type is not implemented as of libc6 2.1 and will always return DT_UNKNOWN (0).
read(2), opendir(3), closedir(3), rewinddir(3), seekdir(3), telldir(3), scandir(3)
19 pages link to readdir(3):