home *** CD-ROM | disk | FTP | other *** search
/ Black Box 4 / BlackBox.cdr / fileutil / tcggrep2.arj / MSD_DIR.H < prev    next >
Encoding:
C/C++ Source or Header  |  1990-11-23  |  1.4 KB  |  52 lines

  1. /*
  2.  * @(#)msd_dir.h 1.4 87/11/06    Public Domain.
  3.  *
  4.  *  A public domain implementation of BSD directory routines for
  5.  *  MS-DOS.  Written by Michael Rendell ({uunet,utai}michael@garfield),
  6.  *  August 1897
  7.  */
  8.  
  9. #define    rewinddir(dirp)    seekdir(dirp, 0L)
  10.  
  11. #define    MAXNAMLEN    12
  12.  
  13. #ifdef    __TURBOC__
  14.   typedef unsigned short ino_t;       /* i-node number (not used on DOS) */
  15. #endif
  16.  
  17. struct direct {
  18.     ino_t    d_ino;            /* a bit of a farce */
  19.     int    d_reclen;        /* more farce */
  20.     int    d_namlen;        /* length of d_name */
  21.     char    d_name[MAXNAMLEN + 1];        /* garentee null termination */
  22. };
  23.  
  24. struct _dircontents {
  25.     char    *_d_entry;
  26.     struct _dircontents    *_d_next;
  27. };
  28.  
  29. typedef struct _dirdesc {
  30.     int        dd_id;    /* uniquely identify each open directory */
  31.     long        dd_loc;    /* where we are in directory entry is this */
  32.     struct _dircontents    *dd_contents;    /* pointer to contents of dir */
  33.     struct _dircontents    *dd_cp;    /* pointer to current position */
  34. } DIR;
  35. #ifdef    __TURBOC__
  36.   extern    DIR                *opendir (char *name);
  37.   extern    struct direct    *readdir (DIR *dirp);
  38.   extern    void            seekdir (DIR *dirp, long    off);
  39.   extern    long            telldir (DIR *dirp);
  40.   extern    void            closedir (DIR *dirp);
  41.   extern    int             norm_path (char *fullpath, char *oldpath);
  42. #else
  43.   extern    DIR        *opendir();
  44.   extern    struct direct    *readdir();
  45.   extern    void        seekdir();
  46.   extern    long        telldir();
  47.   extern    void        closedir();
  48. #endif
  49.  
  50. char *get_working_directory (char *buf, int drive);
  51.  
  52.