Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/share/man/man5 Bring up to date with getdents(2) reality.



details:   https://anonhg.NetBSD.org/src/rev/18564b350a34
branches:  trunk
changeset: 535239:18564b350a34
user:      soren <soren%NetBSD.org@localhost>
date:      Mon Aug 12 20:49:33 2002 +0000

description:
Bring up to date with getdents(2) reality.

diffstat:

 share/man/man5/dir.5 |  99 +++++++++++++++++++--------------------------------
 1 files changed, 37 insertions(+), 62 deletions(-)

diffs (140 lines):

diff -r 843d3007e8a4 -r 18564b350a34 share/man/man5/dir.5
--- a/share/man/man5/dir.5      Mon Aug 12 20:38:06 2002 +0000
+++ b/share/man/man5/dir.5      Mon Aug 12 20:49:33 2002 +0000
@@ -1,4 +1,4 @@
-.\"    $NetBSD: dir.5,v 1.9 2002/02/13 08:18:10 ross Exp $
+.\"    $NetBSD: dir.5,v 1.10 2002/08/12 20:49:33 soren Exp $
 .\"
 .\" Copyright (c) 1983, 1991, 1993
 .\"    The Regents of the University of California.  All rights reserved.
@@ -33,16 +33,15 @@
 .\"
 .\"     @(#)dir.5      8.3 (Berkeley) 4/19/94
 .\"
-.Dd April 19, 1994
-.Dt DIR 5
+.Dd August 12, 2002
+.Dt DIRENT 5
 .Os
 .Sh NAME
-.Nm dir ,
 .Nm dirent
 .Nd directory file format
 .Sh SYNOPSIS
 .Fd #include \*[Lt]sys/types.h\*[Gt]
-.Fd #include \*[Lt]sys/dir.h\*[Gt]
+.Fd #include \*[Lt]sys/dirent.h\*[Gt]
 .Sh DESCRIPTION
 Directories provide a convenient hierarchical method of grouping
 files while obscuring the underlying details of the storage medium.
@@ -77,77 +76,53 @@
 been grafted a file system object, such as a physical disk or a
 partitioned area of such a disk.
 (See
-.\" .Xr mount 1
-.\" and
 .Xr mount 8 . )
 .Pp
 The directory entry format is defined in the file
-.Aq dirent.h :
+.Aq Pa sys/dirent.h :
 .Bd -literal
-#ifndef _DIRENT_H_
-#define _DIRENT_H_
-
 /*
-* A directory entry has a struct dirent at the front of it, containing its
-* inode number, the length of the entry, and the length of the name
-* contained in the entry.  These are followed by the name padded to a 4
-* byte boundary with null bytes.  All names are guaranteed null terminated.
-* The maximum length of a name in a directory is MAXNAMLEN.
-*/
+ * A directory entry has a struct dirent at the front of it, containing
+ * its inode number, the length of the entry, and the length of the name
+ * contained in the entry.  These are followed by the name padded to a
+ * 4 byte boundary with null bytes.  All names are guaranteed null
+ * terminated. The maximum length of a name in a directory is MAXNAMLEN.
+ */
 
 struct dirent {
-       u_long  d_fileno;       /* file number of entry */
-       u_short d_reclen;       /* length of this record */
-       u_short d_namlen;       /* length of string in d_name */
-#ifdef _POSIX_SOURCE
-       char    d_name[MAXNAMLEN + 1];  /* maximum name length */
-#else
+       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 */
 #define MAXNAMLEN       255
-       char    d_name[MAXNAMLEN + 1];  /* maximum name length */
-#endif
-
+       char d_name[MAXNAMLEN + 1]; /* name must be no longer than this */
 };
 
-#ifdef _POSIX_SOURCE
-typedef void * DIR;
-#else
-
-#define        d_ino           d_fileno        /* backward compatibility */
-
-/* definitions for library routines operating on directories. */
-#define        DIRBLKSIZ       1024
-
-/* structure describing an open directory. */
-typedef struct _dirdesc {
-       int     dd_fd;    /* file descriptor associated with directory */
-       long    dd_loc;   /* offset in current buffer */
-       long    dd_size;  /* amount of data returned by getdirentries */
-       char    *dd_buf;  /* data buffer */
-       int     dd_len;   /* size of data buffer */
-       long    dd_seek;  /* magic cookie returned by getdirentries */
-} DIR;
-
-#define        dirfd(dirp)     ((dirp)-\*[Gt]dd_fd)
-
-#ifndef NULL
-#define        NULL    0
-#endif
-
-#endif /* _POSIX_SOURCE */
-
-#ifndef _KERNEL
-
-#include \*[Lt]sys/cdefs.h\*[Gt]
-
-#endif /* !_KERNEL */
-
-#endif /* !_DIRENT_H_ */
+/*
+ * File types
+ */
+#define DT_UNKNOWN     0
+#define DT_FIFO                1
+#define DT_CHR         2
+#define DT_DIR         4
+#define DT_BLK         6
+#define DT_REG         8
+#define DT_LNK         10
+#define DT_SOCK                12
+#define DT_WHT         14 
+#define DT_SOCK                12
+#define DT_WHT         14
 .Ed
 .Sh SEE ALSO
+.Xr getdents 5 ,
+.Xr getdirentries 5 ,
 .Xr fs 5 ,
 .Xr inode 5
 .Sh HISTORY
 A
+dir structure appeared in
+.At v7 .
+The
 .Nm
-file format appeared in
-.At v7 .
+structure appeared in
+.Nx 1.3 .



Home | Main Index | Thread Index | Old Index