home *** CD-ROM | disk | FTP | other *** search
- /* H.Dir: Directory handling */
-
- #ifndef __sys_dir
- #define __sys_dir
-
- #define MAXNAMELEN 10 /* Name must be no longer than this */
-
- struct direct
- {
- long d_ino; /* inode number of entry */
- short d_reclen; /* length of this record */
- short d_namlen; /* length of d_name string */
- char d_name[MAXNAMELEN + 1]; /* directory name */
- };
-
- #define DIRSIZ(dp) \
- ((sizeof (struct direct) - (MAXNAMELEN+1)) \
- + (((dp)->d_namlen+1 + 3) & ~3))
-
- typedef struct
- {
- long dd_loc;
- char dd_name[1];
- }
- DIR;
-
- /* K&R equivalent definitions */
-
- #ifdef PCC
-
- extern DIR *opendir();
- extern struct direct *readdir();
- extern void closedir();
-
- #else
-
- extern DIR *opendir (char *name);
- extern struct direct *readdir (DIR *dirp);
- extern void closedir (DIR *dirp);
-
- #endif
-
- #define seekdir(dirp,pos) ((dirp)->dd_loc = (pos))
- #define telldir(dirp) ((dirp)->dd_loc)
- #define rewinddir(dirp) ((dirp)->dd_loc = 0)
-
- #endif
-