You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.5 KiB
67 lines
1.5 KiB
/* @(#)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 */
|
|
|