DIRREAD(2) DIRREAD(2)
NAME
dirread - read directory
SYNOPSIS
int dirread(int fd, Dir *buf, long nbytes)
DESCRIPTION
The data returned by a read(2) on a directory is a set of
complete directory entries in a machine-independent format,
exactly equivalent to the result of a stat(2) on each file
or subdirectory in the directory. Dirread returns the
entries decoded into an addressable form. It reads from fd
and unpacks the data into Dir structures in buf (see stat(2)
for the layout of a Dir). Nbytes is the size of buf; it
should be a multiple of sizeof(Dir). Directory entries have
length DIRLEN (defined in <libc.h>) in machine-independent
form. A successful read of a directory always returns a
multiple of DIRLEN; dirread always returns a multiple of
sizeof(Dir).
Dirread returns the number of bytes filled in buf; the num-
ber returned may be less than the number requested. The
file offset is advanced by the number of bytes actually
read.
SEE ALSO
intro(2), open(2), read(2)
DIAGNOSTICS
Sets errstr.
Page 1 Plan 9 (printed 11/6/25)