]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/man/man2/getdirentries.2
xnu-6153.11.26.tar.gz
[apple/xnu.git] / bsd / man / man2 / getdirentries.2
index a77a5d8b6e7c4c5c9312717650a22aabc1ec4ea7..f465c57901a8f9248743d9ef80f8fe3835f58205 100644 (file)
@@ -46,7 +46,7 @@
 .Ft int
 .Fn getdirentries "int fd" "char *buf" "int nbytes" "long *basep"
 .Sh DESCRIPTION
-.Fn Getdirentries
+.Fn getdirentries
 reads directory entries from the directory
 referenced by the file descriptor
 .Fa fd
@@ -67,14 +67,12 @@ with buffers smaller than this size.
 .Pp
 The data in the buffer is a series of
 .Em dirent
-structures each containing the following entries:
-.Bd -literal -offset indent
-u_int32_t      d_fileno;             /* file number of entry */
-u_int16_t      d_reclen;             /* length of this record */
-u_int8_t       d_type;               /* file type, see below */
-u_int8_t       d_namlen;             /* length of string in d_name */
-char           d_name[MAXNAMELEN + 1]; /* see below */
-.Ed
+structures (see
+.Xr dir 5)
+The order of the directory entries vended out via 
+.Fn getdirentries
+is not specified. Some filesystems may return entries in lexicographic sort order
+and others may not. 
 .Pp
 The
 .Fa d_fileno
@@ -135,7 +133,7 @@ The pointer may not advance by the number of bytes returned by
 A value of zero is returned when
 the end of the directory has been reached.
 .Pp
-.Fn Getdirentries
+.Fn getdirentries
 writes the position of the block read into the location pointed to by
 .Fa basep .
 Alternatively, the current position pointer may be set and retrieved by
@@ -166,14 +164,18 @@ will not work
 with 64-bit inodes; in order to use
 .Fn getdirentries ,
 .Dv _DARWIN_NO_64_BIT_INODE
-must be defined.
+must be defined.  See
+.Xr stat 2
+for more information on
+.Dv _DARWIN_NO_64_BIT_INODE
+and its other effects.
 .Sh RETURN VALUES
 If successful, the number of bytes actually transferred is returned.
 Otherwise, -1 is returned and the global variable
 .Va errno
 is set to indicate the error.
 .Sh ERRORS
-.Fn Getdirentries
+.Fn getdirentries
 will fail if:
 .Bl -tag -width Er
 .It Bq Er EBADF
@@ -193,8 +195,10 @@ error occurred while reading from or writing to the file system.
 .Sh SEE ALSO
 .Xr lseek 2 ,
 .Xr open 2 ,
+.Xr stat 2 ,
 .Xr opendir 3 ,
-.Xr readdir 3
+.Xr readdir 3 ,
+.Xr dir 5
 .Sh HISTORY
 The
 .Fn getdirentries