/* * @(#) dirent.h 2.0 17 Jun 91 Public Domain. * * A public domain implementation of BSD directory routines for * MS-DOS. Written by Michael Rendell ({uunet,utai}michael@garfield), * August 1987 * * Enhanced and ported to OS/2 by Kai Uwe Rommel; added scandir() prototype * December 1989, February 1990 * Change of MAXPATHLEN for HPFS, October 1990 * * Unenhanced and ported to Windows NT by Bill Gallagher * 17 Jun 91 * changed d_name to char * instead of array, removed non-std extensions * * Cleanup, other hackery, Summer '92, Brian Moran , brianmo@microsoft.com */ #ifndef _DIRENT #define _DIRENT #include struct dirent { ino_t d_ino; /* a bit of a farce */ short d_reclen; /* more farce */ short d_namlen; /* length of d_name */ char *d_name; }; struct _dircontents { char *_d_entry; struct _dircontents *_d_next; }; typedef struct _dirdesc { int dd_id; /* uniquely identify each open directory */ long dd_loc; /* where we are in directory entry */ struct _dircontents *dd_contents; /* pointer to contents of dir */ struct _dircontents *dd_cp; /* pointer to current position */ } DIR; extern DIR *opendir(char *); extern struct dirent *readdir(DIR *); extern void seekdir(DIR *, long); extern long telldir(DIR *); extern void closedir(DIR *); #define rewinddir(dirp) seekdir(dirp, 0L) #endif /* _DIRENT */ /* end of dirent.h */