Mercurial > emacs
comparison src/ndir.h @ 484:3165b2697c78
entered into RCS
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Mon, 13 Jan 1992 21:48:03 +0000 |
parents | |
children | 321b22a46f7a |
comparison
equal
deleted
inserted
replaced
483:00f564a647fa | 484:3165b2697c78 |
---|---|
1 /* | |
2 <dir.h> -- definitions for 4.2BSD-compatible directory access | |
3 | |
4 last edit: 09-Jul-1983 D A Gwyn | |
5 */ | |
6 | |
7 #ifdef VMS | |
8 #ifndef FAB$C_BID | |
9 #include <fab.h> | |
10 #endif | |
11 #ifndef NAM$C_BID | |
12 #include <nam.h> | |
13 #endif | |
14 #ifndef RMS$_SUC | |
15 #include <rmsdef.h> | |
16 #endif | |
17 #include "dir.h" | |
18 #endif /* VMS */ | |
19 | |
20 #define DIRBLKSIZ 512 /* size of directory block */ | |
21 #ifdef VMS | |
22 #define MAXNAMLEN (DIR$S_NAME + 7) /* 80 plus room for version #. */ | |
23 #define MAXFULLSPEC NAM$C_MAXRSS /* Maximum full spec */ | |
24 #else | |
25 #define MAXNAMLEN 15 /* maximum filename length */ | |
26 #endif /* VMS */ | |
27 /* NOTE: MAXNAMLEN must be one less than a multiple of 4 */ | |
28 | |
29 struct direct /* data from readdir() */ | |
30 { | |
31 long d_ino; /* inode number of entry */ | |
32 unsigned short d_reclen; /* length of this record */ | |
33 unsigned short d_namlen; /* length of string in d_name */ | |
34 char d_name[MAXNAMLEN+1]; /* name of file */ | |
35 }; | |
36 | |
37 typedef struct | |
38 { | |
39 int dd_fd; /* file descriptor */ | |
40 int dd_loc; /* offset in block */ | |
41 int dd_size; /* amount of valid data */ | |
42 char dd_buf[DIRBLKSIZ]; /* directory block */ | |
43 } DIR; /* stream data from opendir() */ | |
44 | |
45 extern DIR *opendir(); | |
46 extern struct direct *readdir(); | |
47 extern long telldir(); | |
48 extern void seekdir(); | |
49 extern void closedir(); | |
50 | |
51 #define rewinddir( dirp ) seekdir( dirp, 0L ) |