I've found the following definition for struct dirent members:
char d_name[MAXNAMLEN+1]; /* name of directory entry */
ino_t d_ino; /* file serial number */
short d_namlen; /* length of string in d_name */
short d_reclen; /* length of this record */
Unfortunately Linux currently defines just
long d_ino;
__kernel_off_t d_off;
unsigned short d_reclen;
char d_name[256]; /* We must not include limits.h! */
I don't have the POSIX specs, but the first one claims to be POSIX. Can
Linux have a d_namlen, too?
Ulrich