pmachine.h
上传用户:sddyfurun
上传日期:2007-01-04
资源大小:525k
文件大小:2k
源码类别:

代理服务器

开发平台:

Unix_Linux

  1. /*                                                                           */
  2. /*  * This is where we drop in the various dependencies for different        */
  3. /*  * systems. Someday this might be remotely complete.                      */
  4. /*  *                                                                        */
  5. /*  * I kept the name pmachine.h because it was already in all of the        */
  6. /*  * files...this barely resembles the pmachine.h that comes with the       */
  7. /*  * real Prospero, though.                                                 */
  8. #include "config.h"
  9. #include "includes.h"
  10. #include "defs.h"
  11. #include "protos.h"
  12. #include "socks.h"
  13. #ifdef u3b2
  14. # define USG
  15. # define MAXPATHLEN 1024       /* There's no maxpathlen in any 3b2 .h file.  */
  16. #endif
  17. #ifdef m88k
  18. #define MAXPATHLEN 1024
  19. #endif
  20. /* These are required for a Sequent running Dynix/PTX, their SysV variant.
  21.    Archie builds fine untouched on a system running their BSD-based OS.  */
  22. #ifdef _SEQUENT_
  23. # define USG
  24. #endif
  25. #ifdef _AUX_SOURCE
  26. # define AUX
  27. # define NBBY 8 /* Number of bits in a byte.  */
  28. typedef long Fd_mask;
  29. # define NFDBITS (sizeof(Fd_mask) * NBBY) /* bits per mask */
  30. #endif
  31. #ifdef _AIX
  32. # define _NONSTD_TYPES
  33. # define _BSD_INCLUDES
  34. #endif
  35. /* General problems.  */
  36. #ifndef HAVE_INDEX
  37. #define index strchr
  38. #endif
  39. #ifndef HAVE_RINDEX
  40. #define rindex strrchr
  41. #endif
  42. #ifndef HAVE_BCOPY
  43. #define bcopy(a,b,n) memcpy(b,a,n)
  44. #endif
  45. #ifndef HAVE_BZERO
  46. #define bzero(a,n) memset(a,0,n)
  47. #endif
  48. /*
  49.  * FD_SET: lib/pfs/dirsend.c, user/vget/ftp.c
  50.  */
  51. #define SELECTARG fd_set
  52. #if !defined(FD_SET) && !defined(linux)
  53. #define FD_SETSIZE 32
  54. #define FD_SET(n, p) ((p)->fds_bits[(n)/NFDBITS] |= (1 << ((n) % NFDBITS)))
  55. #define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS)))
  56. #define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1 << ((n) % NFDBITS)))
  57. #undef FD_ZERO
  58. #define FD_ZERO(p) bzero((char *)(p), sizeof(*(p)))
  59. #endif