2 <dir.h> -- definitions for 4.2BSD-compatible directory access
4 last edit: 09-Jul-1983 D A Gwyn
6 * The code here is forced by the interface, and is not subject to
7 * copyright, constituting the only possible expression of the
8 * algorithm in this format.
11 #define DIRBLKSIZ 512 /* size of directory block */
14 #else /* not WINDOWSNT */
15 #define MAXNAMLEN 15 /* maximum filename length */
16 #endif /* not WINDOWSNT */
17 /* NOTE: MAXNAMLEN must be one less than a multiple of 4 */
19 struct direct
/* data from readdir() */
21 long d_ino
; /* inode number of entry */
22 unsigned short d_reclen
; /* length of this record */
23 unsigned short d_namlen
; /* length of string in d_name */
24 char d_name
[MAXNAMLEN
+1]; /* name of file */
29 int dd_fd
; /* file descriptor */
30 int dd_loc
; /* offset in block */
31 int dd_size
; /* amount of valid data */
32 char dd_buf
[DIRBLKSIZ
]; /* directory block */
33 } DIR; /* stream data from opendir() */
35 extern DIR *opendir (char *);
36 extern struct direct
*readdir (DIR *);
37 extern void seekdir (DIR *, long);
38 extern void closedir (DIR *);
40 #define rewinddir( dirp ) seekdir( dirp, 0L )