summaryrefslogtreecommitdiff
path: root/doc/posix-functions/readdir.texi
blob: 195d16c363ebf5ac2a57fc5c26e6515d23e1aec6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
@node readdir
@section @code{readdir}
@findex readdir

POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9699919799/functions/readdir.html}

Gnulib module: readdir

Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on some platforms:
MSVC 14.
@item
On platforms where @code{off_t} is a 32-bit type, this function may not
work correctly on huge directories larger than 2 GB@.  Also, on platforms
where @code{ino_t} is a 32-bit type, this function may report inode numbers
incorrectly.  This can occur with file systems such as XFS (typically on
large disks) and NFS@.  (Cf. @code{AC_SYS_LARGEFILE}.)
@end itemize

Portability problems not fixed by Gnulib:
@itemize
@item
Although POSIX places no restrictions on @code{d_ino} values, some
older systems are rumored to return @code{d_ino} values equal to zero
for directory entries that do not really exist.  Although Gnulib
formerly attempted to cater to these older systems, this caused
misbehavior on standard systems and so Gnulib does not attempt to
cater to them any more.  If you know of any problems caused by this,
please send a bug report.
@end itemize