home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / misc / volume39 / ncftp / part05 / sys.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-08-25  |  7.0 KB  |  375 lines

  1. /* Sys.h
  2.  * See the README for details.
  3.  */
  4.  
  5. /*  $RCSfile: sys.h,v $
  6.  *  $Revision: 14020.13 $
  7.  *  $Date: 93/06/21 06:42:11 $
  8.  */
  9.  
  10. #ifdef __sun
  11. #    ifndef sun
  12. #        define sun 1
  13. #    endif
  14. #endif
  15.  
  16. #ifdef sun
  17. #    if !defined(__GNUC__) && !defined(__STDC__) && !defined(SunOverride)
  18.     ^^^ "You need to use an ANSI C compiler.  Try using gcc or acc." ^^^
  19. #    endif
  20. #    define System "SunOS"
  21. #    ifndef RINDEX
  22. #        define RINDEX 1
  23. #    endif
  24. #    ifndef TERMIOS
  25. #        define TERMIOS 1
  26. #    endif
  27. #    ifndef HAS_DOMAINNAME
  28. #        define HAS_DOMAINNAME 1
  29. #    endif
  30. #endif /* sun */
  31.  
  32. #ifdef __sgi
  33. #    ifndef sgi
  34. #        define sgi 1
  35. #    endif
  36. #endif
  37.  
  38. #ifdef sgi
  39. #    define System "IRIX"
  40. #    ifndef SYSV
  41. #        define SYSV 1
  42. #    endif
  43. #    ifndef HERROR
  44. #        define HERROR 1
  45. #    endif
  46. #    ifndef U_WAIT
  47. #        define U_WAIT 1
  48. #    endif
  49. #    ifndef STRICT_PROTOS
  50. #        define STRICT_PROTOS 1
  51. #    endif
  52. #endif /* sgi */
  53.  
  54. #ifdef _AIX
  55. #    define System "AIX"
  56. #    define SYSSELECTH 1
  57. #endif    /* _AIX */
  58.  
  59. #ifdef SCO324
  60. #    define System "SCO Unix"
  61. #    ifndef SYSV
  62. #        define SYSV 1
  63. #    endif
  64. #    ifndef BROKEN_MEMCPY
  65. #        define BROKEN_MEMCPY 1
  66. #    endif
  67. #endif    /* SCO */
  68.  
  69. #ifdef aux
  70. #    define System "A/UX"
  71. #    ifndef BROKEN_MEMCPY
  72. #        define BROKEN_MEMCPY 1
  73. #    endif
  74. #    ifndef SYSV
  75. #        define SYSV 1
  76. #    endif
  77. #endif
  78.  
  79. #ifdef NeXT
  80. #    define System "NeXTStep"
  81. #    ifndef RINDEX
  82. #        define RINDEX 1
  83. #    endif
  84. #    ifndef BSD
  85. #        define BSD 1
  86. #    endif
  87. #    ifndef NO_UNISTDH
  88. #        define NO_UNISTDH 1
  89. #    endif
  90. #    ifndef NO_UTIMEH
  91. #        define NO_UTIMEH
  92. #    endif
  93. #endif
  94.  
  95. #ifdef pyr
  96. #    define System "OSx"
  97. #    ifndef BSD
  98. #        define BSD 1
  99. #    endif
  100. #    ifndef SGTTYB
  101. #        define SGTTYB 1
  102. #    endif
  103. #    ifndef NO_STDLIBH
  104. #        define NO_STDLIBH 1
  105. #    endif
  106. #    include <sys/types.h>
  107. extern int errno;
  108. #endif    /* pyr */
  109.  
  110. #ifdef DYNIX
  111. #    define System "Dynix"
  112. #    ifndef BSD
  113. #        define BSD 1
  114. #    endif
  115. #    ifndef SGTTYB
  116. #        define SGTTYB 1
  117. #    endif
  118. #    ifndef NO_STDLIBH
  119. #        define NO_STDLIBH 1
  120. #    endif
  121. #endif    /* DYNIX */
  122.  
  123. #ifdef ultrix
  124. #    define System "Ultrix"
  125. #    ifndef BSD
  126. #        define BSD 1
  127. #    endif
  128. #    ifndef __GNUC__
  129. #        ifndef NO_CONST
  130. #            define NO_CONST 1
  131. #        endif
  132. #    endif
  133. #endif    /* ultrix */
  134.  
  135. #ifdef __hpux
  136. #    ifndef HPUX
  137. #        define HPUX 1
  138. #    endif
  139. #    define Select(a,b,c,d,e) select((a), (int *)(b), (c), (d), (e))
  140. #endif
  141.  
  142. #ifdef HPUX 
  143. #    define System "HP-UX"
  144. #    ifndef _HPUX_SOURCE
  145. #        define _HPUX_SOURCE 1
  146. #    endif
  147. #    ifndef GETCWDSIZET
  148. #        define GETCWDSIZET 1
  149. #    endif
  150. #    define SYSV 1
  151. #endif    /* HPUX */
  152.  
  153. #ifdef SINIX
  154. #    define System "SINIX"
  155. #    ifndef SYSV
  156. #        define SYSV 1
  157. #    endif
  158. /* You may need to add -lresolv, -lport, -lcurses to MORELIBS in Makefile. */
  159. #endif
  160.  
  161. #ifdef BULL          /* added 23nov92 for Bull DPX/2 */
  162. #    define _POSIX_SOURCE
  163. #    define _XOPEN_SOURCE
  164. #    define _BULL_SOURCE
  165. #    ifndef SYSV
  166. #        define SYSV 1
  167. #    endif
  168. #    define bull
  169. #    define System "Bull DPX/2 BOS"
  170. #    include <sys/types.h>
  171. #    define SYSSELECTH
  172. #endif  /* BULL */   /* added 23nov92 for Bull DPX/2 */
  173.  
  174. #ifdef __dgux
  175. #     ifndef DGUX
  176. #             define DGUX 1
  177. #     endif
  178. #endif
  179.  
  180. #ifdef DGUX
  181. #     ifndef _DGUX_SOURCE
  182. #             define _DGUX_SOURCE
  183. #     endif
  184. #     define GETCWDSIZET 1
  185. #     define BAD_INETADDR 1
  186. #     define SYSV 1
  187. #     define System "DG/UX"
  188. #endif  /* DGUX */
  189.  
  190. #ifdef apollo
  191. #    ifndef BSD
  192. #        define BSD 43
  193. #    endif
  194. #    define SIG_PARAMS (int sig, ...)
  195. #    define NO_UTIMEH 1
  196. #    define System "Apollo"
  197. #endif
  198.  
  199. /* -------------------------------------------------------------------- */
  200.  
  201. #ifdef _SYSV
  202. #    ifndef SYSV
  203. #        define SYSV 1
  204. #    endif
  205. #endif
  206.  
  207. #ifdef USG
  208. #    ifndef SYSV
  209. #        define SYSV 1
  210. #    endif
  211. #endif
  212.  
  213. #ifdef _BSD
  214. #    ifndef BSD
  215. #        define BSD 1
  216. #    endif
  217. #endif
  218.  
  219. #ifdef SYSV
  220. #    ifndef RINDEX
  221. #        define RINDEX 1
  222. #    endif
  223. #    define bcopy(s,d,l) memcpy((d),(s),(l))
  224. #ifdef __386BSD__
  225. #    define TERMIOS
  226. #    ifndef BSD
  227. #        define BSD
  228. #    endif
  229. #endif
  230.  
  231. #    define bzero(cp,l) memset((cp),0,(l))
  232. #endif
  233.  
  234. #ifdef BSD
  235. #    ifndef __386BSD__
  236. #        ifndef SYSDIRH
  237. #            define SYSDIRH 1
  238. #        endif
  239. #        ifndef SGTTYB
  240. #            define SGTTYB
  241. #        endif
  242. #    endif
  243. #    ifndef SGTTYB
  244. #        define SGTTYB
  245. #    endif
  246. #    ifndef RINDEX
  247. #        define RINDEX 1
  248. #    endif
  249. #endif
  250.  
  251. /*
  252.  * Some systems besides System V don't use rindex/index (like SunOS).
  253.  * Add -DRINDEX to your SDEFS line if you need to.
  254.  */
  255. #ifdef RINDEX
  256.     /* or #include <strings.h> if you have it. */
  257. #    define rindex strrchr
  258. #    define index strchr
  259. #endif /* RINDEX */
  260.  
  261. #ifdef SOCKS
  262. #define Getsockname(d,a,l) Rgetsockname((d), (struct sockaddr *)(a), (l))
  263. #else
  264. #ifdef SYSV
  265. #    define Getsockname(d,a,l) getsockname((d), (void *)(a), (l))
  266. #else
  267. #    define Getsockname(d,a,l) getsockname((d), (struct sockaddr *)(a), (l))
  268. #endif
  269. #endif
  270.  
  271. #ifndef Select
  272. #    define Select(a,b,c,d,e) select((a), (b), (c), (d), (e))
  273. #endif
  274.  
  275. #ifdef GETPASS
  276. #    define Getpass getpass
  277. #endif
  278.  
  279. /* Enable connections through firewall gateways */
  280. #ifndef GATEWAY
  281. #    define GATEWAY 1
  282. #endif
  283.  
  284. #ifdef _POSIX_SOURCE
  285. #    define TERMIOS
  286. #endif
  287.  
  288. #include <stdio.h>
  289. #ifndef NO_STDLIBH
  290. #    include <stdlib.h>
  291. #else
  292. extern void *malloc(size_t);
  293. extern void *calloc(size_t, size_t);
  294. extern void *malloc(size_t);
  295. extern void    free(void *);
  296. extern void *realloc(void *, size_t);
  297. extern void    exit(int);
  298.  
  299. #ifdef NO_CONST
  300. extern char *getenv(char *);
  301. extern int atoi(char *);
  302. #else
  303. extern char *getenv(const char *);
  304. extern int atoi(const char *);
  305. #endif
  306.  
  307. #endif    /* NO_STDLIBH */
  308.  
  309. #ifdef NO_UNISTDH
  310. char *getlogin (void);
  311. #ifdef NO_CONST
  312. extern char *getenv(char *);
  313. #else
  314. extern char *getenv(const char *);
  315. #endif
  316. #endif    /* NO_UNISTDH */
  317.  
  318. #ifdef NO_STD_PROTOS
  319. #include <sys/time.h>
  320. #include <sys/types.h>
  321. #include <sys/socket.h>
  322. #include <time.h>
  323. extern    int     _filbuf(FILE *);
  324. extern    int     _flsbuf(int, FILE *);
  325. extern    int     fflush(FILE *);
  326. extern    int     fprintf(FILE *, char *, ...);
  327. extern    int     fputc(int, FILE *);
  328. extern    int     fputs(char *, FILE *);
  329. extern    int     fclose(FILE *);
  330. extern    int     pclose(FILE *);
  331. extern    void    perror(char *);
  332. extern    int     printf(char *, ...);
  333. extern    int     rewind(FILE *);
  334. extern    int     sscanf(char *, char *, ...);
  335.  
  336. extern    char *  mktemp(char *);
  337. extern    int     rename(char *, char *);
  338.  
  339. extern    int     gettimeofday(struct timeval *, struct timezone *);
  340. extern    time_t  mktime(struct tm *);
  341. extern    int     strftime(char *, int, char *, struct tm *);
  342. extern    time_t  time(time_t *);
  343.  
  344. extern    int     tolower(int);
  345.  
  346. #ifndef bcopy
  347. extern    void    bcopy(char *, char *, size_t);
  348. #endif
  349. #ifndef bzero
  350. extern    void    bzero(char *, size_t);
  351. #endif
  352.  
  353. #ifdef SOCKS 
  354. extern    int     Raccept(int, struct sockaddr *, int *);
  355. extern    int     Rbind(int, struct sockaddr *, int, unsigned long);
  356. extern    int     Rconnect(int, struct sockaddr *, int);
  357. extern    int     Rlisten(int, int);
  358. extern    int     Rgetsockname(int, struct sockaddr *, int *);
  359. #else
  360. extern    int     accept(int, struct sockaddr *, int *);
  361. extern    int     bind(int, struct sockaddr *, int);
  362. extern    int     connect(int, struct sockaddr *, int);
  363. extern    int     listen(int, int);
  364. extern    int     getsockname(int, struct sockaddr *, int *);
  365. #endif
  366. extern    int     gethostname(char *, int), getdomainname(char *, int);
  367. extern    int     select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
  368. extern    int     send(int, char *, int, int);
  369. extern    int     setsockopt(int, int, int, char *, int);
  370. extern    int     shutdown(int, int);
  371. extern    int     socket(int, int, int);
  372. #endif    /* NO_STD_PROTOS */
  373.  
  374. /* eof sys.h */
  375.