Bump version to 24.2
[bpt/emacs.git] / src / ndir.h
CommitLineData
d427b66a
JB
1/*
2 <dir.h> -- definitions for 4.2BSD-compatible directory access
3
4 last edit: 09-Jul-1983 D A Gwyn
d427b66a 5
14216c95
GM
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.
9 */
d427b66a
JB
10
11#define DIRBLKSIZ 512 /* size of directory block */
6cc1fc1d
RS
12#ifdef WINDOWSNT
13#define MAXNAMLEN 255
14#else /* not WINDOWSNT */
d427b66a 15#define MAXNAMLEN 15 /* maximum filename length */
6cc1fc1d 16#endif /* not WINDOWSNT */
d427b66a
JB
17 /* NOTE: MAXNAMLEN must be one less than a multiple of 4 */
18
19struct direct /* data from readdir() */
20 {
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 */
25 };
26
27typedef struct
28 {
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() */
34
361358ea
JB
35extern DIR *opendir (char *);
36extern struct direct *readdir (DIR *);
37extern void seekdir (DIR *, long);
38extern void closedir (DIR *);
d427b66a
JB
39
40#define rewinddir( dirp ) seekdir( dirp, 0L )
ab5796a9 41