config.h.in
上传用户:liugui
上传日期:2007-01-04
资源大小:822k
文件大小:5k
源码类别:

代理服务器

开发平台:

Unix_Linux

  1. /*
  2.  * $Id: config.h.in,v 1.43.2.1 1999/02/12 19:38:14 wessels Exp $
  3.  *
  4.  * AUTHOR: Duane Wessels
  5.  *
  6.  * SQUID Internet Object Cache  http://squid.nlanr.net/Squid/
  7.  * --------------------------------------------------------
  8.  *
  9.  *  Squid is the result of efforts by numerous individuals from the
  10.  *  Internet community.  Development is led by Duane Wessels of the
  11.  *  National Laboratory for Applied Network Research and funded by
  12.  *  the National Science Foundation.
  13.  *
  14.  *  This program is free software; you can redistribute it and/or modify
  15.  *  it under the terms of the GNU General Public License as published by
  16.  *  the Free Software Foundation; either version 2 of the License, or
  17.  *  (at your option) any later version.
  18.  *  
  19.  *  This program is distributed in the hope that it will be useful,
  20.  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  21.  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  22.  *  GNU General Public License for more details.
  23.  *  
  24.  *  You should have received a copy of the GNU General Public License
  25.  *  along with this program; if not, write to the Free Software
  26.  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
  27.  *  
  28.  */
  29. #ifndef _CONFIG_H_
  30. #define _CONFIG_H_
  31. #include "autoconf.h" /* For GNU autoconf variables */
  32. #include "version.h"
  33. /****************************************************************************
  34.  *--------------------------------------------------------------------------*
  35.  * DO *NOT* MAKE ANY CHANGES below here unless you know what you're doing...*
  36.  *--------------------------------------------------------------------------*
  37.  ****************************************************************************/
  38. #ifdef USE_POSIX_REGEX
  39. #ifndef USE_RE_SYNTAX
  40. #define USE_RE_SYNTAX REG_EXTENDED /* default Syntax */
  41. #endif
  42. #endif
  43. /* define the _SQUID_TYPE_ based on a guess of the OS */
  44. #if defined(__sun__) || defined(__sun) /* SUN */
  45. #define _SQUID_SUN_
  46. #if defined(__SVR4) /* SOLARIS */
  47. #define _SQUID_SOLARIS_
  48. #else /* SUNOS */
  49. #define _SQUID_SUNOS_
  50. #endif
  51. #elif defined(__hpux)                           /* HP-UX - SysV-like? */
  52. #define _SQUID_HPUX_
  53. #define _SQUID_SYSV_
  54. #elif defined(__osf__)                          /* OSF/1 */
  55. #define _SQUID_OSF_
  56. #elif defined(__ultrix) /* Ultrix */
  57. #define _SQUID_ULTRIX_
  58. #elif defined(_AIX)                           /* AIX */
  59. #define _SQUID_AIX_
  60. #elif defined(__linux__)                        /* Linux */
  61. #define _SQUID_LINUX_
  62. #if USE_ASYNC_IO
  63. #define _SQUID_LINUX_THREADS_
  64. #endif
  65. #elif defined(__FreeBSD__) /* FreeBSD */
  66. #define _SQUID_FREEBSD_
  67. #if USE_ASYNC_IO && defined(LINUXTHREADS)
  68. #define _SQUID_LINUX_THREADS_
  69. #endif
  70. #elif defined(__sgi__) || defined(sgi) || defined(__sgi) /* SGI */
  71. #define _SQUID_SGI_
  72. #if !defined(_SVR4_SOURCE)
  73. #define _SVR4_SOURCE /* for tempnam(3) */
  74. #endif
  75. #if USE_ASYNC_IO
  76. #define _ABI_SOURCE
  77. #endif /* USE_ASYNC_IO */
  78. #elif defined(__NeXT__)
  79. #define _SQUID_NEXT_
  80. #elif defined(__bsdi__)
  81. #define _SQUID_BSDI_                          /* BSD/OS */
  82. #elif defined(__NetBSD__)
  83. #define _SQUID_NETBSD_
  84. #elif defined(__CYGWIN32__) || defined(WIN32) || defined(WINNT) || defined(__WIN32__) || defined(__WIN32)
  85. #define _SQUID_MSWIN_
  86. #elif defined(sony_news) && defined(__svr4)
  87. #define _SQUID_NEWSOS6_
  88. #elif defined(__EMX__) || defined(OS2) || defined(__OS2__)
  89. #define _SQUID_OS2_
  90. /*
  91.  *  FIXME: the os2 port of bash seems to have problems checking
  92.  *  the return codes of programs in if statements.  These options
  93.  *  need to be overridden.
  94.  */
  95. #ifndef socklen_t
  96. #define socklen_t int
  97. #endif
  98. #ifndef fd_mask
  99. #define fd_mask unsigned long
  100. #endif
  101. #endif
  102. #if !defined(CACHE_HTTP_PORT)
  103. #define CACHE_HTTP_PORT @CACHE_HTTP_PORT@
  104. #endif
  105. #if !defined(CACHE_ICP_PORT)
  106. #define CACHE_ICP_PORT @CACHE_ICP_PORT@
  107. #endif
  108. #if !defined(CACHEMGR_HOSTNAME)
  109. #define CACHEMGR_HOSTNAME ""
  110. #endif
  111. #if SQUID_UDP_SO_SNDBUF > 16384
  112. #undef SQUID_UDP_SO_SNDBUF
  113. #define SQUID_UDP_SO_SNDBUF 16384
  114. #endif
  115. #if SQUID_UDP_SO_RCVBUF > 16384
  116. #undef SQUID_UDP_SO_RCVBUF
  117. #define SQUID_UDP_SO_RCVBUF 16384
  118. #endif
  119. #ifdef HAVE_MEMCPY
  120. #define xmemcpy(d,s,n) memcpy((d),(s),(n))
  121. #elif HAVE_BCOPY
  122. #define xmemcpy(d,s,n) bcopy((s),(d),(n))
  123. #elif HAVE_MEMMOVE
  124. #define xmemcpy(d,s,n) memmove((d),(s),(n))
  125. #endif
  126. #ifdef HAVE_MEMMOVE
  127. #define xmemmove(d,s,n) memmove((d),(s),(n))
  128. #elif HAVE_BCOPY
  129. #define xmemmove(d,s,n) bcopy((s),(d),(n))
  130. #endif
  131. #define xisspace(x) isspace((unsigned char)x)
  132. #define xtoupper(x) toupper((unsigned char)x)
  133. #define xtolower(x) tolower((unsigned char)x)
  134. #define xisdigit(x) isdigit((unsigned char)x)
  135. #define xisascii(x) isascii((unsigned char)x)
  136. #define xislower(x) islower((unsigned char)x)
  137. #define xisalpha(x) isalpha((unsigned char)x)
  138. #if defined(O_NONBLOCK) && !defined(_SQUID_SUNOS_) && !defined(_SQUID_SOLARIS_)
  139. #define SQUID_NONBLOCK O_NONBLOCK
  140. #else
  141. #define SQUID_NONBLOCK O_NDELAY
  142. #endif
  143. #if HAVE_RANDOM
  144. #define squid_random random
  145. #define squid_srandom srandom
  146. #elif HAVE_LRAND48
  147. #define squid_random lrand48
  148. #define squid_srandom srand48
  149. #else
  150. #define squid_random rand
  151. #define squid_srandom srand
  152. #endif
  153. /* 32 bit integer compatability hack */
  154. #if SIZEOF_INT == 4
  155. typedef int num32;
  156. typedef unsigned int u_num32;
  157. #elif SIZEOF_LONG == 4
  158. typedef long num32;
  159. typedef unsigned long u_num32;
  160. #else
  161. typedef long num32;             /* assume that long's are 32bit */
  162. typedef unsigned long u_num32;
  163. #endif
  164. #define NUM32LEN sizeof(num32)  /* this should always be 4 */
  165. #endif /* _CONFIG_H_ */