Different file system types may have different directory entries. The dirent structure defines a file system independent directory entry, which contains information common to directory
entries in different file system types. A set of these structures is returned by the getdents(2) system call.
The dirent structure is defined:
|
struct dirent {
ino_t d_ino;
off_t d_off;
unsigned short d_reclen;
char d_name[1];
};
|
The d_ino is a number which is unique for each file in the file system. The d_off entry contains a value which is interpretable only by the filesystem that
generated it. It may be supplied as an offset to lseek(2) to
find the entry following the current one in a directory. The field d_name is the beginning of the character array giving the name of the directory entry. This name is null terminated
and may have at most MAXNAMLEN characters. This results in file system independent directory entries being variable length entities. The value of d_reclen is the record length of this entry. This length is defined to be the number of bytes between the current entry and the next one, so that the next structure will be suitably aligned.
|