home *** CD-ROM | disk | FTP | other *** search
- /* @(#)dirent.h 1.7 89/06/25 SMI */
-
- /*
- * Filesystem-independent directory information.
- */
-
- #ifndef __dirent_h
- #define __dirent_h
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- /* Make sure we don't get the V7 RTL dirent functions. These are broken. */
-
- #ifndef __CRTL_VER
- # define __CRTL_VER __VMS_VER
- #endif
- #if __CRTL_VER >= 70000000
- #include <dirent.h>
- #endif
-
- #include <types.h>
-
- #define opendir goo_opendir
- #define readdir goo_readdir
- #define closedir goo_closedir
- #define seekdir goo_seekdir
- #define telldir goo_telldir
- #define rewinddir goo_rewindir
- #define DIR GOO_DIR
-
- #ifndef _POSIX_SOURCE
- #define d_ino d_fileno /* compatability */
- #ifndef NULL
- #define NULL 0
- #endif
- #endif /* !_POSIX_SOURCE */
-
- /*
- * Definitions for library routines operating on directories.
- */
- typedef struct __dirdesc {
- unsigned long dd_fd; /* file descriptor */
- long dd_loc; /* buf offset of entry from last readddir() */
- long dd_size; /* amount of valid data in buffer */
- long dd_bsize; /* amount of entries read at a time */
- long dd_off; /* Current offset in dir (for telldir) */
- char *dd_buf; /* directory data buffer */
- } DIR;
-
- #include "vms_sys_dirent.h"
-
- extern DIR *opendir(char *dirname);
- extern struct dirent *readdir(DIR *dirp);
- extern void closedir(DIR *dirp);
- #ifndef _POSIX_SOURCE
- extern void seekdir(DIR *dirp, int loc);
- extern long telldir(DIR *dirp);
- #endif /* POSIX_SOURCE */
- extern void rewinddir(DIR *dirp);
-
- #ifdef __cplusplus
- }
- #endif
-
- #endif /* !__dirent_h */
-