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

代理服务器

开发平台:

Unix_Linux

  1. /*
  2.  * $Id: typedefs.h,v 1.86 1999/01/29 23:39:25 wessels Exp $
  3.  *
  4.  *
  5.  * SQUID Internet Object Cache  http://squid.nlanr.net/Squid/
  6.  * ----------------------------------------------------------
  7.  *
  8.  *  Squid is the result of efforts by numerous individuals from the
  9.  *  Internet community.  Development is led by Duane Wessels of the
  10.  *  National Laboratory for Applied Network Research and funded by the
  11.  *  National Science Foundation.  Squid is Copyrighted (C) 1998 by
  12.  *  Duane Wessels and the University of California San Diego.  Please
  13.  *  see the COPYRIGHT file for full details.  Squid incorporates
  14.  *  software developed and/or copyrighted by other sources.  Please see
  15.  *  the CREDITS file for full details.
  16.  *
  17.  *  This program is free software; you can redistribute it and/or modify
  18.  *  it under the terms of the GNU General Public License as published by
  19.  *  the Free Software Foundation; either version 2 of the License, or
  20.  *  (at your option) any later version.
  21.  *  
  22.  *  This program is distributed in the hope that it will be useful,
  23.  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  24.  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  25.  *  GNU General Public License for more details.
  26.  *  
  27.  *  You should have received a copy of the GNU General Public License
  28.  *  along with this program; if not, write to the Free Software
  29.  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
  30.  *
  31.  */
  32. typedef unsigned int store_status_t;
  33. typedef unsigned int mem_status_t;
  34. typedef unsigned int ping_status_t;
  35. typedef unsigned int swap_status_t;
  36. typedef struct {
  37.     size_t bytes;
  38.     size_t kb;
  39. } kb_t;
  40. typedef struct {
  41.     size_t count;
  42.     size_t bytes;
  43.     size_t gb;
  44. } gb_t;
  45. /*
  46.  * grep '^struct' structs.h 
  47.  * | perl -ne '($a,$b)=split;$c=$b;$c=~s/^_//; print "typedef struct $b $c;n";'
  48.  */
  49. typedef struct _acl_ip_data acl_ip_data;
  50. typedef struct _acl_time_data acl_time_data;
  51. typedef struct _acl_name_list acl_name_list;
  52. typedef struct _acl_deny_info_list acl_deny_info_list;
  53. typedef struct _acl_proxy_auth acl_proxy_auth;
  54. typedef struct _acl_proxy_auth_user acl_proxy_auth_user;
  55. typedef struct _acl_arp_data acl_arp_data;
  56. typedef struct _acl acl;
  57. typedef struct _acl_snmp_comm acl_snmp_comm;
  58. typedef struct _acl_list acl_list;
  59. typedef struct _acl_access acl_access;
  60. typedef struct _aclCheck_t aclCheck_t;
  61. typedef struct _aio_result_t aio_result_t;
  62. typedef struct _wordlist wordlist;
  63. typedef struct _intlist intlist;
  64. typedef struct _intrange intrange;
  65. typedef struct _ushortlist ushortlist;
  66. typedef struct _relist relist;
  67. typedef struct _SquidConfig SquidConfig;
  68. typedef struct _SquidConfig2 SquidConfig2;
  69. typedef struct _close_handler close_handler;
  70. typedef struct _dread_ctrl dread_ctrl;
  71. typedef struct _dnsserver_t dnsserver_t;
  72. typedef struct _dnsStatData dnsStatData;
  73. typedef struct _dwrite_q dwrite_q;
  74. typedef struct _ETag ETag;
  75. typedef struct _fde fde;
  76. typedef struct _fileMap fileMap;
  77. typedef struct _fqdncache_entry fqdncache_entry;
  78. typedef struct _fqdn_pending fqdn_pending;
  79. typedef struct _HttpReply http_reply;
  80. typedef struct _HttpStatusLine HttpStatusLine;
  81. typedef struct _HttpHeaderFieldAttrs HttpHeaderFieldAttrs;
  82. typedef struct _HttpHeaderFieldInfo HttpHeaderFieldInfo;
  83. typedef struct _HttpHeader HttpHeader;
  84. typedef struct _HttpHdrCc HttpHdrCc;
  85. typedef struct _HttpHdrRangeSpec HttpHdrRangeSpec;
  86. typedef struct _HttpHdrRange HttpHdrRange;
  87. typedef struct _HttpHdrRangeIter HttpHdrRangeIter;
  88. typedef struct _HttpHdrContRange HttpHdrContRange;
  89. typedef struct _TimeOrTag TimeOrTag;
  90. typedef struct _HttpHeaderEntry HttpHeaderEntry;
  91. typedef struct _HttpHeaderFieldStat HttpHeaderFieldStat;
  92. typedef struct _HttpHeaderStat HttpHeaderStat;
  93. typedef struct _HttpBody HttpBody;
  94. typedef struct _HttpReply HttpReply;
  95. typedef struct _HttpStateData HttpStateData;
  96. typedef struct _icpUdpData icpUdpData;
  97. typedef struct _clientHttpRequest clientHttpRequest;
  98. typedef struct _ConnStateData ConnStateData;
  99. typedef struct _ipcache_addrs ipcache_addrs;
  100. typedef struct _ipcache_entry ipcache_entry;
  101. typedef struct _ip_pending ip_pending;
  102. typedef struct _domain_ping domain_ping;
  103. typedef struct _domain_type domain_type;
  104. typedef struct _DynPool DynPool;
  105. typedef struct _Packer Packer;
  106. typedef struct _StoreDigestCBlock StoreDigestCBlock;
  107. typedef struct _DigestFetchState DigestFetchState;
  108. typedef struct _PeerDigest PeerDigest;
  109. typedef struct _peer peer;
  110. typedef struct _net_db_name net_db_name;
  111. typedef struct _net_db_peer net_db_peer;
  112. typedef struct _netdbEntry netdbEntry;
  113. typedef struct _ping_data ping_data;
  114. typedef struct _ps_state ps_state;
  115. typedef struct _HierarchyLogEntry HierarchyLogEntry;
  116. typedef struct _pingerEchoData pingerEchoData;
  117. typedef struct _pingerReplyData pingerReplyData;
  118. typedef struct _icp_common_t icp_common_t;
  119. typedef struct _Meta_data Meta_data;
  120. typedef struct _iostats iostats;
  121. typedef struct _MemBuf MemBuf;
  122. typedef struct _mem_node mem_node;
  123. typedef struct _mem_hdr mem_hdr;
  124. typedef struct _store_client store_client;
  125. typedef struct _MemObject MemObject;
  126. typedef struct _StoreEntry StoreEntry;
  127. typedef struct _SwapDir SwapDir;
  128. typedef struct _request_flags request_flags;
  129. typedef struct _helper_flags helper_flags;
  130. typedef struct _http_state_flags http_state_flags;
  131. typedef struct _request_t request_t;
  132. typedef struct _AccessLogEntry AccessLogEntry;
  133. typedef struct _cachemgr_passwd cachemgr_passwd;
  134. typedef struct _refresh_t refresh_t;
  135. typedef struct _CommWriteStateData CommWriteStateData;
  136. typedef struct _ErrorState ErrorState;
  137. typedef struct _dlink_node dlink_node;
  138. typedef struct _dlink_list dlink_list;
  139. typedef struct _StatCounters StatCounters;
  140. typedef struct _tlv tlv;
  141. typedef struct _storeSwapLogData storeSwapLogData;
  142. typedef struct _cacheSwap cacheSwap;
  143. typedef struct _StatHist StatHist;
  144. typedef struct _String String;
  145. typedef struct _MemMeter MemMeter;
  146. typedef struct _MemPoolMeter MemPoolMeter;
  147. typedef struct _MemPool MemPool;
  148. typedef struct _ClientInfo ClientInfo;
  149. typedef struct _cd_guess_stats cd_guess_stats;
  150. typedef struct _CacheDigest CacheDigest;
  151. typedef struct _Version Version;
  152. typedef struct _FwdState FwdState;
  153. typedef struct _FwdServer FwdServer;
  154. typedef struct _helper helper;
  155. typedef struct _helper_server helper_server;
  156. typedef struct _helper_request helper_request;
  157. typedef struct _generic_cbdata generic_cbdata;
  158. #if SQUID_SNMP
  159. typedef variable_list *(oid_ParseFn) (variable_list *, snint *);
  160. typedef struct _snmp_request_t snmp_request_t;
  161. #endif
  162. #if DELAY_POOLS
  163. typedef struct _delayConfig delayConfig;
  164. typedef struct _delaySpecSet delaySpecSet;
  165. typedef struct _delaySpec delaySpec;
  166. #endif
  167. /* define AIOCB even without USE_ASYNC_IO */
  168. typedef void AIOCB(int fd, void *, int aio_return, int aio_errno);
  169. typedef void CWCB(int fd, char *, size_t size, int flag, void *data);
  170. typedef void CNCB(int fd, int status, void *);
  171. typedef void FREE(void *);
  172. typedef void CBDUNL(void *, int);
  173. typedef void FOCB(void *, int fd, int errcode);
  174. typedef void EVH(void *);
  175. typedef void PF(int, void *);
  176. typedef void DRCB(int fd, const char *buf, int size, int errflag, void *data);
  177. typedef void DWCB(int, int, size_t, void *);
  178. typedef void FQDNH(const char *, void *);
  179. typedef void IDCB(const char *ident, void *data);
  180. typedef void IPH(const ipcache_addrs *, void *);
  181. typedef void IRCB(peer *, peer_t, protocol_t, void *, void *data);
  182. typedef void PSC(FwdServer *, void *);
  183. typedef void RH(void *data, char *);
  184. typedef void UH(void *data, wordlist *);
  185. typedef int DEFER(int fd, void *data);
  186. typedef void SIH(int fd, void *); /* swap in */
  187. typedef int QS(const void *, const void *); /* qsort */
  188. typedef void STCB(void *, char *, ssize_t); /* store callback */
  189. typedef void STABH(void *);
  190. typedef void ERCB(int fd, void *, size_t);
  191. typedef void OBJH(StoreEntry *);
  192. typedef void SIGHDLR(int sig);
  193. typedef void STVLDCB(void *, int, int);
  194. typedef void HLPCB(void *, char *buf);
  195. typedef void HLPCMDOPTS(int *argc, char **argv);
  196. typedef double hbase_f(double);
  197. typedef void StatHistBinDumper(StoreEntry *, int idx, double val, double size, int count);
  198. /* append/vprintf's for Packer */
  199. typedef void (*append_f) (void *, const char *buf, int size);
  200. #if STDC_HEADERS
  201. typedef void (*vprintf_f) (void *, const char *fmt, va_list args);
  202. #else
  203. typedef void (*vprintf_f) ();
  204. #endif
  205. /* MD5 cache keys */
  206. typedef unsigned char cache_key;
  207. /* context-based debugging, the actual type is subject to change */
  208. typedef int Ctx;
  209. /* in case we want to change it later */
  210. typedef size_t mb_size_t;
  211. /* iteration for HttpHdrRange */
  212. typedef int HttpHdrRangePos;
  213. /*iteration for headers; use HttpHeaderPos as opaque type, do not interpret */
  214. typedef ssize_t HttpHeaderPos;
  215. /* big mask for http headers */
  216. typedef char HttpHeaderMask[8];
  217. /* a common objPackInto interface; used by debugObj */
  218. typedef void (*ObjPackMethod) (void *obj, Packer * p);
  219. #if DELAY_POOLS
  220. typedef unsigned int delay_id;
  221. #endif
  222. #if USE_HTCP
  223. typedef struct _htcpReplyData htcpReplyData;
  224. #endif