home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume34 / unpackmaps / part02 / unpack.h < prev    next >
C/C++ Source or Header  |  1992-11-29  |  2KB  |  130 lines

  1. /* Copyright 1992, Chris Lewis.  All Rights Reserved
  2.    Please see the README for the terms of the copyright.
  3.    1.5 92/11/28
  4.  */
  5.  
  6. #ifndef lint
  7. #ifdef INIT
  8. static char head_SCCSid[] = "@(#)unpack.h 1.5 92/11/28 02:09:22";
  9. #endif
  10. #endif
  11.  
  12. #define VERSION "unpackmaps 4.1"
  13.  
  14. #include "config.h"
  15. #include <stdio.h>
  16. #include <errno.h>
  17.  
  18. extern int errno;
  19.  
  20.  
  21. #ifdef    NEEDTYPES_H
  22. #include <sys/types.h>
  23. #endif
  24.  
  25. #include <sys/stat.h>
  26.  
  27. #ifdef    BSD
  28. # include <strings.h>
  29. # define strchr    index
  30. # define strrchr rindex
  31. # include <sys/file.h>
  32.  
  33. #else
  34. # include <string.h>
  35.  
  36. # include <unistd.h>
  37. #endif
  38.  
  39. #include <ctype.h>
  40.  
  41. #ifndef    F_OK
  42. # define F_OK    0
  43. # define X_OK    1
  44. # define W_OK    2
  45. # define R_OK    4
  46. #endif
  47.  
  48. #ifndef    INIT
  49. # define INIT(x)
  50. # define EXTERN extern
  51. #else
  52. # define EXTERN
  53. #endif
  54.  
  55. extern MALLRET *malloc();
  56. extern MALLRET *realloc();
  57.  
  58. EXTERN char
  59.     tempbuf[BUFSIZ],
  60.     unpackdir[BUFSIZ]    INIT(MAPDIR),
  61.     pathfile[BUFSIZ]    INIT(PATHFILE),
  62.     *wheredb;
  63.  
  64. #ifdef    UNPACKMAPS
  65. EXTERN char
  66.     *togofile,
  67.     *workfile,
  68.     *tempfile,
  69.     *wheretmp,
  70.     *pathtmp,
  71.     *pathtmp2,
  72.     *notify            INIT((char *) NULL),
  73.     *pathalias        INIT(PATHALIAS),
  74.     compress[BUFSIZ]    INIT(COMPRESS),
  75.     spooldir[BUFSIZ]    INIT(SPOOLDIR);
  76. #endif    /* UNPACKMAPS */
  77.  
  78.  
  79. struct stringlist {
  80.     char **list;
  81.     char **curptr;
  82.     char **lastalloc;
  83. };
  84.  
  85. #ifdef    UNPACKMAPS
  86.  
  87. EXTERN struct stringlist
  88.             mapfiles,
  89.             lmapfiles,
  90.             localmaps;
  91.  
  92. EXTERN char *internet        INIT((char*) NULL);
  93. EXTERN int verbose;
  94.  
  95.  
  96. #endif    /* UNPACKMAPS */
  97.  
  98. EXTERN int
  99.     debug        INIT(0),
  100.     usage        INIT(0);
  101.  
  102. #ifdef    UNPACKMAPS
  103. EXTERN int
  104.     runpath        INIT(0),
  105.     forcepath    INIT(0),
  106.     initialize    INIT(0),
  107.     compflag    INIT(0),
  108.     anyunpacked    INIT(0),
  109.     whereonly    INIT(0),
  110.     unlinkskip    INIT(0),
  111.     unlinkflag    INIT(0),
  112.     dontunpack    INIT(0),
  113.     batchlock    INIT(0);
  114. #endif    /* UNPACKMAPS */
  115.  
  116. extern FILE *popen();
  117.  
  118. EXTERN char *progname;
  119.  
  120. EXTERN char *makepath();
  121. EXTERN int setbatch();
  122. #ifdef USGDIR
  123. #include <dirent.h>
  124. #endif
  125.  
  126. #ifdef BERKDIR
  127. #define    direct dirent
  128. #include <sys/dir.h>
  129. #endif
  130.