]>
Commit | Line | Data |
---|---|---|
f892c2bf | 1 | |
9cef6668 | 2 | /* |
dba79ac5 | 3 | * $Id: enums.h,v 1.136 1998/11/11 20:04:15 glenn Exp $ |
9cef6668 | 4 | * |
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 the | |
12 | * National Science Foundation. Squid is Copyrighted (C) 1998 by | |
13 | * Duane Wessels and the University of California San Diego. Please | |
14 | * see the COPYRIGHT file for full details. Squid incorporates | |
15 | * software developed and/or copyrighted by other sources. Please see | |
16 | * the CREDITS file for full details. | |
17 | * | |
18 | * This program is free software; you can redistribute it and/or modify | |
19 | * it under the terms of the GNU General Public License as published by | |
20 | * the Free Software Foundation; either version 2 of the License, or | |
21 | * (at your option) any later version. | |
22 | * | |
23 | * This program is distributed in the hope that it will be useful, | |
24 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
25 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
26 | * GNU General Public License for more details. | |
27 | * | |
28 | * You should have received a copy of the GNU General Public License | |
29 | * along with this program; if not, write to the Free Software | |
30 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. | |
31 | * | |
32 | */ | |
f892c2bf | 33 | |
34 | typedef enum { | |
79a15e0a | 35 | LOG_TAG_NONE, |
36 | LOG_TCP_HIT, | |
37 | LOG_TCP_MISS, | |
38 | LOG_TCP_REFRESH_HIT, | |
39 | LOG_TCP_REFRESH_FAIL_HIT, | |
40 | LOG_TCP_REFRESH_MISS, | |
ee1679df | 41 | LOG_TCP_CLIENT_REFRESH_MISS, |
79a15e0a | 42 | LOG_TCP_IMS_HIT, |
79a15e0a | 43 | LOG_TCP_SWAPFAIL_MISS, |
44 | LOG_TCP_NEGATIVE_HIT, | |
45 | LOG_TCP_MEM_HIT, | |
46 | LOG_TCP_DENIED, | |
b540e168 | 47 | LOG_TCP_OFFLINE_HIT, |
79a15e0a | 48 | LOG_UDP_HIT, |
79a15e0a | 49 | LOG_UDP_MISS, |
50 | LOG_UDP_DENIED, | |
51 | LOG_UDP_INVALID, | |
52 | LOG_UDP_MISS_NOFETCH, | |
071a3ae7 | 53 | LOG_ICP_QUERY, |
79a15e0a | 54 | LOG_TYPE_MAX |
f892c2bf | 55 | } log_type; |
56 | ||
9b312a19 | 57 | typedef enum { |
58 | ERR_NONE, | |
59 | ERR_READ_TIMEOUT, | |
60 | ERR_LIFETIME_EXP, | |
9b312a19 | 61 | ERR_READ_ERROR, |
62 | ERR_WRITE_ERROR, | |
63 | ERR_CLIENT_ABORT, | |
64 | ERR_CONNECT_FAIL, | |
65 | ERR_INVALID_REQ, | |
66 | ERR_UNSUP_REQ, | |
67 | ERR_INVALID_URL, | |
68 | ERR_SOCKET_FAILURE, | |
69 | ERR_DNS_FAIL, | |
9b312a19 | 70 | ERR_CANNOT_FORWARD, |
bdb3c273 | 71 | ERR_FORWARDING_DENIED, |
9b312a19 | 72 | ERR_NO_RELAY, |
9b312a19 | 73 | ERR_ZERO_SIZE_OBJECT, |
74 | ERR_FTP_DISABLED, | |
b9916917 | 75 | ERR_FTP_FAILURE, |
23d92c64 | 76 | ERR_URN_RESOLVE, |
9b312a19 | 77 | ERR_ACCESS_DENIED, |
cb69b4c7 | 78 | ERR_CACHE_ACCESS_DENIED, |
63259c34 | 79 | ERR_CACHE_MGR_ACCESS_DENIED, |
2ac76861 | 80 | ERR_SQUID_SIGNATURE, /* not really an error */ |
ec878047 | 81 | ERR_FTP_PUT_CREATED, /* !error,a note that the file was created */ |
59c4d35b | 82 | ERR_FTP_PUT_MODIFIED, /* modified, !created */ |
83 | ERR_FTP_PUT_ERROR, | |
ec878047 | 84 | ERR_ONLY_IF_CACHED_MISS, /* failure to satisfy only-if-cached request */ |
9b312a19 | 85 | ERR_MAX |
86 | } err_type; | |
87 | ||
f892c2bf | 88 | typedef enum { |
89 | ACL_NONE, | |
90 | ACL_SRC_IP, | |
91 | ACL_DST_IP, | |
92 | ACL_SRC_DOMAIN, | |
93 | ACL_DST_DOMAIN, | |
d0d41f07 | 94 | ACL_SRC_DOM_REGEX, |
95 | ACL_DST_DOM_REGEX, | |
f892c2bf | 96 | ACL_TIME, |
97 | ACL_URLPATH_REGEX, | |
98 | ACL_URL_REGEX, | |
99 | ACL_URL_PORT, | |
100 | ACL_USER, | |
101 | ACL_PROTO, | |
102 | ACL_METHOD, | |
103 | ACL_BROWSER, | |
afe95a7e | 104 | ACL_PROXY_AUTH, |
5d6c7aad | 105 | ACL_SRC_ASN, |
106 | ACL_DST_ASN, | |
6b6347d5 | 107 | ACL_SRC_ARP, |
dba79ac5 | 108 | ACL_SNMP_COMMUNITY, |
bd05e3e3 | 109 | ACL_NETDB_SRC_RTT, |
f892c2bf | 110 | ACL_ENUM_MAX |
111 | } squid_acl; | |
112 | ||
113 | typedef enum { | |
114 | ACL_LOOKUP_NONE, | |
115 | ACL_LOOKUP_NEEDED, | |
116 | ACL_LOOKUP_PENDING, | |
73e67ee0 | 117 | ACL_LOOKUP_DONE, |
118 | ACL_PROXY_AUTH_NEEDED, | |
119 | ACL_PROXY_AUTH_USED, | |
120 | ACL_PROXY_AUTH_CHECK | |
f892c2bf | 121 | } acl_lookup_state; |
122 | ||
f892c2bf | 123 | enum { |
124 | FD_NONE, | |
125 | FD_LOG, | |
126 | FD_FILE, | |
127 | FD_SOCKET, | |
128 | FD_PIPE, | |
129 | FD_UNKNOWN | |
130 | }; | |
131 | ||
132 | enum { | |
133 | FD_READ, | |
134 | FD_WRITE | |
135 | }; | |
136 | ||
137 | enum { | |
138 | FD_CLOSE, | |
139 | FD_OPEN | |
140 | }; | |
141 | ||
142 | enum { | |
143 | FQDN_CACHED, | |
144 | FQDN_NEGATIVE_CACHED, | |
145 | FQDN_PENDING, /* waiting to be dispatched */ | |
146 | FQDN_DISPATCHED /* waiting for reply from dnsserver */ | |
147 | }; | |
148 | typedef unsigned int fqdncache_status_t; | |
149 | ||
150 | enum { | |
151 | IP_CACHED, | |
152 | IP_NEGATIVE_CACHED, | |
153 | IP_PENDING, /* waiting to be dispatched */ | |
154 | IP_DISPATCHED /* waiting for reply from dnsserver */ | |
155 | }; | |
156 | typedef unsigned int ipcache_status_t; | |
157 | ||
158 | typedef enum { | |
159 | PEER_NONE, | |
160 | PEER_SIBLING, | |
161 | PEER_PARENT, | |
162 | PEER_MULTICAST | |
163 | } peer_t; | |
164 | ||
9fdfc93e | 165 | typedef enum { |
166 | PEER_SA_NONE, | |
167 | PEER_SA_DIGEST, | |
69c95dd3 | 168 | PEER_SA_ICP, |
169 | PEER_SA_NETDB | |
9fdfc93e | 170 | } peer_select_alg_t; |
171 | ||
172 | typedef enum { | |
173 | LOOKUP_NONE, | |
174 | LOOKUP_HIT, | |
4b4cd312 | 175 | LOOKUP_MISS |
9fdfc93e | 176 | } lookup_t; |
177 | ||
4f087419 | 178 | /* recognized or "known" header fields; @?@ add more! */ |
179 | typedef enum { | |
180 | HDR_ACCEPT, | |
d8b249ef | 181 | HDR_ACCEPT_CHARSET, |
182 | HDR_ACCEPT_ENCODING, | |
183 | HDR_ACCEPT_LANGUAGE, | |
de336bbe | 184 | HDR_ACCEPT_RANGES, |
4f087419 | 185 | HDR_AGE, |
99edd1c3 | 186 | HDR_ALLOW, |
187 | HDR_AUTHORIZATION, | |
4f087419 | 188 | HDR_CACHE_CONTROL, |
189 | HDR_CONNECTION, | |
2246b732 | 190 | HDR_CONTENT_BASE, |
4f087419 | 191 | HDR_CONTENT_ENCODING, |
99edd1c3 | 192 | HDR_CONTENT_LANGUAGE, |
4f087419 | 193 | HDR_CONTENT_LENGTH, |
2246b732 | 194 | HDR_CONTENT_LOCATION, |
4f087419 | 195 | HDR_CONTENT_MD5, |
d76fcfa7 | 196 | HDR_CONTENT_RANGE, |
4f087419 | 197 | HDR_CONTENT_TYPE, |
198 | HDR_DATE, | |
199 | HDR_ETAG, | |
200 | HDR_EXPIRES, | |
99edd1c3 | 201 | HDR_FROM, |
4f087419 | 202 | HDR_HOST, |
99edd1c3 | 203 | HDR_IF_MODIFIED_SINCE, |
e17d81d3 | 204 | HDR_IF_RANGE, |
4f087419 | 205 | HDR_LAST_MODIFIED, |
99edd1c3 | 206 | HDR_LINK, |
4f087419 | 207 | HDR_LOCATION, |
208 | HDR_MAX_FORWARDS, | |
d8b249ef | 209 | HDR_MIME_VERSION, |
99edd1c3 | 210 | HDR_PRAGMA, |
4f087419 | 211 | HDR_PROXY_AUTHENTICATE, |
99edd1c3 | 212 | HDR_PROXY_AUTHORIZATION, |
213 | HDR_PROXY_CONNECTION, | |
4f087419 | 214 | HDR_PUBLIC, |
02922e76 | 215 | HDR_RANGE, |
135171fe | 216 | HDR_REQUEST_RANGE, /* some clients use this, sigh */ |
99edd1c3 | 217 | HDR_REFERER, |
4f087419 | 218 | HDR_RETRY_AFTER, |
de336bbe | 219 | HDR_SERVER, |
4f087419 | 220 | HDR_SET_COOKIE, |
99edd1c3 | 221 | HDR_TITLE, |
4f087419 | 222 | HDR_UPGRADE, |
99edd1c3 | 223 | HDR_USER_AGENT, |
783e4699 | 224 | HDR_VARY, |
99edd1c3 | 225 | HDR_VIA, |
4f087419 | 226 | HDR_WARNING, |
227 | HDR_WWW_AUTHENTICATE, | |
de336bbe | 228 | HDR_X_CACHE, |
4b4cd312 | 229 | HDR_X_CACHE_LOOKUP, /* tmp hack, remove later */ |
99edd1c3 | 230 | HDR_X_FORWARDED_FOR, |
2246b732 | 231 | HDR_X_REQUEST_URI, /* appended if ADD_X_REQUEST_URI is #defined */ |
fcc62502 | 232 | HDR_X_SQUID_ERROR, |
4f087419 | 233 | HDR_OTHER, |
234 | HDR_ENUM_END | |
235 | } http_hdr_type; | |
236 | ||
237 | /* server cache-control */ | |
238 | typedef enum { | |
7faf2bdb | 239 | CC_PUBLIC, |
240 | CC_PRIVATE, | |
241 | CC_NO_CACHE, | |
242 | CC_NO_STORE, | |
243 | CC_NO_TRANSFORM, | |
244 | CC_MUST_REVALIDATE, | |
245 | CC_PROXY_REVALIDATE, | |
246 | CC_MAX_AGE, | |
d8b249ef | 247 | CC_ONLY_IF_CACHED, |
248 | CC_OTHER, | |
7faf2bdb | 249 | CC_ENUM_END |
250 | } http_hdr_cc_type; | |
251 | ||
252 | /* possible types for http header fields */ | |
253 | typedef enum { | |
399e85ea | 254 | ftInvalid = HDR_ENUM_END, /* to catch nasty errors with hdr_id<->fld_type clashes */ |
7faf2bdb | 255 | ftInt, |
4f7e9dbb | 256 | ftStr, |
7faf2bdb | 257 | ftDate_1123, |
a9771e51 | 258 | ftETag, |
02922e76 | 259 | ftPCc, |
a9771e51 | 260 | ftPContRange, |
02922e76 | 261 | ftPRange, |
a9771e51 | 262 | ftDate_1123_or_ETag |
7faf2bdb | 263 | } field_type; |
4f087419 | 264 | |
2246b732 | 265 | /* possible owners of http header */ |
266 | typedef enum { | |
267 | hoNone, | |
ff6c30e8 | 268 | #if USE_HTCP |
269 | hoHtcpReply, | |
270 | #endif | |
2246b732 | 271 | hoRequest, |
272 | hoReply | |
273 | } http_hdr_owner_type; | |
274 | ||
f892c2bf | 275 | typedef enum { |
276 | HIER_NONE, | |
277 | DIRECT, | |
278 | SIBLING_HIT, | |
279 | PARENT_HIT, | |
280 | DEFAULT_PARENT, | |
281 | SINGLE_PARENT, | |
282 | FIRSTUP_PARENT, | |
283 | NO_PARENT_DIRECT, | |
284 | FIRST_PARENT_MISS, | |
285 | CLOSEST_PARENT_MISS, | |
69c95dd3 | 286 | CLOSEST_PARENT, |
f892c2bf | 287 | CLOSEST_DIRECT, |
288 | NO_DIRECT_FAIL, | |
289 | SOURCE_FASTEST, | |
f892c2bf | 290 | ROUNDROBIN_PARENT, |
6cfa8966 | 291 | #if USE_CACHE_DIGESTS |
c127134a | 292 | CACHE_DIGEST_HIT, |
285f75ea | 293 | NO_CACHE_DIGEST_DIRECT, |
afd88fbe | 294 | #endif |
295 | #if USE_CARP | |
296 | CARP, | |
c127134a | 297 | #endif |
6a655df0 | 298 | ANY_OLD_PARENT, |
f892c2bf | 299 | HIER_MAX |
300 | } hier_code; | |
301 | ||
302 | typedef enum { | |
27cd7235 | 303 | ICP_INVALID, |
304 | ICP_QUERY, | |
305 | ICP_HIT, | |
306 | ICP_MISS, | |
307 | ICP_ERR, | |
308 | ICP_SEND, | |
309 | ICP_SENDA, | |
310 | ICP_DATABEG, | |
311 | ICP_DATA, | |
312 | ICP_DATAEND, | |
313 | ICP_SECHO, | |
314 | ICP_DECHO, | |
315 | ICP_UNUSED12, | |
316 | ICP_UNUSED13, | |
317 | ICP_UNUSED14, | |
318 | ICP_UNUSED15, | |
319 | ICP_UNUSED16, | |
320 | ICP_UNUSED17, | |
321 | ICP_UNUSED18, | |
322 | ICP_UNUSED19, | |
323 | ICP_UNUSED20, | |
324 | ICP_MISS_NOFETCH, | |
da2d50d1 | 325 | ICP_DENIED, |
27cd7235 | 326 | ICP_HIT_OBJ, |
327 | ICP_END | |
f892c2bf | 328 | } icp_opcode; |
329 | ||
330 | enum { | |
331 | NOT_IN_MEMORY, | |
f892c2bf | 332 | IN_MEMORY |
333 | }; | |
334 | ||
335 | enum { | |
336 | PING_NONE, | |
337 | PING_WAITING, | |
338 | PING_TIMEOUT, | |
339 | PING_DONE | |
340 | }; | |
341 | ||
342 | enum { | |
343 | STORE_OK, | |
344 | STORE_PENDING, | |
345 | STORE_ABORTED | |
346 | }; | |
347 | ||
348 | enum { | |
8350fe9b | 349 | SWAPOUT_NONE, |
350 | SWAPOUT_OPENING, | |
351 | SWAPOUT_WRITING, | |
352 | SWAPOUT_DONE | |
f892c2bf | 353 | }; |
354 | ||
7405a782 | 355 | typedef enum { |
5d86029a | 356 | STORE_NON_CLIENT, |
357 | STORE_MEM_CLIENT, | |
358 | STORE_DISK_CLIENT | |
7405a782 | 359 | } store_client_t; |
74ac2ecb | 360 | |
f892c2bf | 361 | enum { |
362 | METHOD_NONE, /* 000 */ | |
363 | METHOD_GET, /* 001 */ | |
364 | METHOD_POST, /* 010 */ | |
365 | METHOD_PUT, /* 011 */ | |
366 | METHOD_HEAD, /* 100 */ | |
367 | METHOD_CONNECT, /* 101 */ | |
368 | METHOD_TRACE, /* 110 */ | |
710bd872 | 369 | METHOD_PURGE, /* 111 */ |
370 | METHOD_ENUM_END | |
f892c2bf | 371 | }; |
372 | typedef unsigned int method_t; | |
373 | ||
374 | typedef enum { | |
375 | PROTO_NONE, | |
376 | PROTO_HTTP, | |
377 | PROTO_FTP, | |
378 | PROTO_GOPHER, | |
379 | PROTO_WAIS, | |
380 | PROTO_CACHEOBJ, | |
381 | PROTO_ICP, | |
86aebcda | 382 | #if USE_HTCP |
383 | PROTO_HTCP, | |
384 | #endif | |
23d92c64 | 385 | PROTO_URN, |
53ad48e6 | 386 | PROTO_WHOIS, |
1da5651f | 387 | PROTO_INTERNAL, |
4f3de732 | 388 | PROTO_HTTPS, |
f892c2bf | 389 | PROTO_MAX |
390 | } protocol_t; | |
9b312a19 | 391 | |
392 | typedef enum { | |
728da2ee | 393 | HTTP_STATUS_NONE = 0, |
9b312a19 | 394 | HTTP_CONTINUE = 100, |
395 | HTTP_SWITCHING_PROTOCOLS = 101, | |
396 | HTTP_OK = 200, | |
397 | HTTP_CREATED = 201, | |
398 | HTTP_ACCEPTED = 202, | |
399 | HTTP_NON_AUTHORITATIVE_INFORMATION = 203, | |
400 | HTTP_NO_CONTENT = 204, | |
401 | HTTP_RESET_CONTENT = 205, | |
402 | HTTP_PARTIAL_CONTENT = 206, | |
403 | HTTP_MULTIPLE_CHOICES = 300, | |
404 | HTTP_MOVED_PERMANENTLY = 301, | |
405 | HTTP_MOVED_TEMPORARILY = 302, | |
406 | HTTP_SEE_OTHER = 303, | |
407 | HTTP_NOT_MODIFIED = 304, | |
408 | HTTP_USE_PROXY = 305, | |
409 | HTTP_BAD_REQUEST = 400, | |
410 | HTTP_UNAUTHORIZED = 401, | |
411 | HTTP_PAYMENT_REQUIRED = 402, | |
412 | HTTP_FORBIDDEN = 403, | |
413 | HTTP_NOT_FOUND = 404, | |
414 | HTTP_METHOD_NOT_ALLOWED = 405, | |
415 | HTTP_NOT_ACCEPTABLE = 406, | |
416 | HTTP_PROXY_AUTHENTICATION_REQUIRED = 407, | |
417 | HTTP_REQUEST_TIMEOUT = 408, | |
418 | HTTP_CONFLICT = 409, | |
419 | HTTP_GONE = 410, | |
420 | HTTP_LENGTH_REQUIRED = 411, | |
421 | HTTP_PRECONDITION_FAILED = 412, | |
422 | HTTP_REQUEST_ENTITY_TOO_LARGE = 413, | |
423 | HTTP_REQUEST_URI_TOO_LARGE = 414, | |
424 | HTTP_UNSUPPORTED_MEDIA_TYPE = 415, | |
425 | HTTP_INTERNAL_SERVER_ERROR = 500, | |
426 | HTTP_NOT_IMPLEMENTED = 501, | |
427 | HTTP_BAD_GATEWAY = 502, | |
428 | HTTP_SERVICE_UNAVAILABLE = 503, | |
429 | HTTP_GATEWAY_TIMEOUT = 504, | |
cb69b4c7 | 430 | HTTP_HTTP_VERSION_NOT_SUPPORTED = 505, |
ee1679df | 431 | HTTP_INVALID_HEADER = 600 /* Squid header parsing error */ |
9b312a19 | 432 | } http_status; |
79a15e0a | 433 | |
d46a87a8 | 434 | /* |
435 | * These are for StoreEntry->flag, which is defined as a SHORT | |
436 | * | |
437 | * NOTE: These flags are written to swap.state, so think very carefully | |
438 | * about deleting or re-assigning! | |
439 | */ | |
79a15e0a | 440 | enum { |
d46a87a8 | 441 | ENTRY_SPECIAL, |
442 | ENTRY_REVALIDATE, | |
443 | DELAY_SENDING, | |
444 | RELEASE_REQUEST, | |
445 | REFRESH_REQUEST, | |
446 | ENTRY_CACHABLE, | |
447 | ENTRY_DISPATCHED, | |
448 | KEY_PRIVATE, | |
449 | #ifndef PPNR_WIP | |
450 | ENTRY_UNUSED_08, | |
451 | #else | |
452 | ENTRY_FWD_HDR_WAIT, | |
453 | #endif /* PPNR_WIP */ | |
454 | ENTRY_NEGCACHED, | |
455 | ENTRY_VALIDATED, | |
456 | ENTRY_BAD_LENGTH | |
79a15e0a | 457 | }; |
458 | ||
fc5d6f7f | 459 | typedef enum { |
460 | ACCESS_DENIED, | |
461 | ACCESS_ALLOWED, | |
462 | ACCESS_REQ_PROXY_AUTH | |
463 | } allow_t; | |
a97cfa48 | 464 | |
3f6c0fb2 | 465 | #if SQUID_SNMP |
a97cfa48 | 466 | enum { |
be335c22 | 467 | SNMP_C_VIEW, |
468 | SNMP_C_USER, | |
469 | SNMP_C_COMMUNITY | |
a97cfa48 | 470 | }; |
067bea91 | 471 | |
3f6c0fb2 | 472 | #endif |
473 | ||
474 | typedef enum { | |
067bea91 | 475 | MEM_NONE, |
d90c79ee | 476 | MEM_DONTFREE, |
067bea91 | 477 | MEM_DISK_BUF, |
478 | MEM_STMEM_BUF, | |
137ee196 | 479 | MEM_2K_BUF, |
067bea91 | 480 | MEM_4K_BUF, |
481 | MEM_8K_BUF, | |
cc27d775 | 482 | MEM_CLIENT_SOCK_BUF, |
067bea91 | 483 | MEM_ACL_IP_DATA, |
484 | MEM_ACL_TIME_DATA, | |
485 | MEM_ACL_NAME_LIST, | |
486 | MEM_ACL_DENY_INFO_LIST, | |
487 | MEM_ACL, | |
067bea91 | 488 | MEM_ACL_LIST, |
489 | MEM_ACL_ACCESS, | |
ec878047 | 490 | MEM_ACL_PROXY_AUTH_USER, |
067bea91 | 491 | MEM_ACLCHECK_T, |
492 | MEM_AIO_RESULT_T, | |
493 | MEM_WORDLIST, | |
494 | MEM_INTLIST, | |
495 | MEM_USHORTLIST, | |
496 | MEM_RELIST, | |
497 | MEM_SQUIDCONFIG, | |
498 | MEM_SQUIDCONFIG2, | |
499 | MEM_CLOSE_HANDLER, | |
500 | MEM_DREAD_CTRL, | |
501 | MEM_DNSSERVER_T, | |
502 | MEM_DNSSTATDATA, | |
503 | MEM_DWRITE_Q, | |
504 | MEM_FILEMAP, | |
505 | MEM_FQDNCACHE_ENTRY, | |
59c4d35b | 506 | MEM_FQDNCACHE_PENDING, |
798b0889 | 507 | MEM_FWD_STATE, |
508 | MEM_FWD_SERVER, | |
067bea91 | 509 | MEM_HASH_LINK, |
510 | MEM_HASH_TABLE, | |
d8b249ef | 511 | MEM_HTTP_REPLY, |
512 | MEM_HTTP_HDR_ENTRY, | |
7faf2bdb | 513 | MEM_HTTP_HDR_CC, |
b5107edb | 514 | MEM_HTTP_HDR_RANGE_SPEC, |
515 | MEM_HTTP_HDR_RANGE, | |
d76fcfa7 | 516 | MEM_HTTP_HDR_CONTENT_RANGE, |
cb87dab6 | 517 | MEM_HTTP_STATE_DATA, |
067bea91 | 518 | MEM_ICPUDPDATA, |
519 | MEM_CLIENTHTTPREQUEST, | |
520 | MEM_CONNSTATEDATA, | |
59c4d35b | 521 | MEM_IPCACHE_PENDING, |
067bea91 | 522 | MEM_IPCACHE_ENTRY, |
523 | MEM_DOMAIN_PING, | |
524 | MEM_DOMAIN_TYPE, | |
9fdfc93e | 525 | MEM_DIGEST_FETCH_STATE, |
067bea91 | 526 | MEM_PEER, |
527 | MEM_NET_DB_NAME, | |
528 | MEM_NET_DB_PEER, | |
529 | MEM_NETDBENTRY, | |
530 | MEM_ICP_PING_DATA, | |
531 | MEM_PS_STATE, | |
532 | MEM_HIERARCHYLOGENTRY, | |
533 | MEM_PINGERECHODATA, | |
534 | MEM_PINGERREPLYDATA, | |
535 | MEM_ICP_COMMON_T, | |
067bea91 | 536 | MEM_IOSTATS, |
537 | MEM_MEM_NODE, | |
067bea91 | 538 | MEM_STORE_CLIENT, |
539 | MEM_MEMOBJECT, | |
540 | MEM_STOREENTRY, | |
541 | MEM_SWAPDIR, | |
542 | MEM_REQUEST_T, | |
543 | MEM_ACCESSLOGENTRY, | |
9fdfc93e | 544 | MEM_CACHE_DIGEST, |
067bea91 | 545 | MEM_CACHEMGR_PASSWD, |
546 | MEM_REFRESH_T, | |
547 | MEM_COMMWRITESTATEDATA, | |
548 | MEM_ERRORSTATE, | |
549 | MEM_DLINK_NODE, | |
550 | MEM_DLINK_LIST, | |
551 | MEM_STATCOUNTERS, | |
59c4d35b | 552 | MEM_CLIENT_INFO, |
e55650e3 | 553 | MEM_MD5_DIGEST, |
067bea91 | 554 | MEM_MAX |
3f6c0fb2 | 555 | } mem_type; |
a21fbb54 | 556 | |
69c01cd7 | 557 | /* |
558 | * NOTE! We must preserve the order of this list! | |
559 | */ | |
a21fbb54 | 560 | enum { |
f09f5b26 | 561 | STORE_META_VOID, /* should not come up */ |
562 | STORE_META_KEY_URL, /* key w/ keytype */ | |
563 | STORE_META_KEY_SHA, | |
564 | STORE_META_KEY_MD5, | |
565 | STORE_META_URL, /* the url , if not in the header */ | |
566 | STORE_META_STD, /* standard metadata */ | |
567 | STORE_META_HITMETERING, /* reserved for hit metering */ | |
69c01cd7 | 568 | STORE_META_VALID, |
569 | STORE_META_END | |
f09f5b26 | 570 | }; |
571 | ||
572 | enum { | |
5830cdb3 | 573 | STORE_LOG_CREATE, |
574 | STORE_LOG_SWAPIN, | |
575 | STORE_LOG_SWAPOUT, | |
576 | STORE_LOG_RELEASE | |
577 | }; | |
578 | ||
b109de6b | 579 | typedef enum { |
5830cdb3 | 580 | SWAP_LOG_NOP, |
581 | SWAP_LOG_ADD, | |
b109de6b | 582 | SWAP_LOG_DEL, |
583 | SWAP_LOG_MAX | |
584 | } swap_log_op; | |
adba4a64 | 585 | |
586 | ||
587 | /* parse state of HttpReply or HttpRequest */ | |
2ac76861 | 588 | typedef enum { |
589 | psReadyToParseStartLine = 0, | |
590 | psReadyToParseHeaders, | |
591 | psParsed, | |
592 | psError | |
adba4a64 | 593 | } HttpMsgParseState; |
b87b92fb | 594 | |
595 | ||
596 | enum { | |
597 | MEDIAN_HTTP, | |
598 | MEDIAN_ICP_QUERY, | |
599 | MEDIAN_DNS, | |
600 | MEDIAN_HIT, | |
601 | MEDIAN_MISS, | |
602 | MEDIAN_NM, | |
7c9c84ad | 603 | MEDIAN_NH, |
b87b92fb | 604 | MEDIAN_ICP_REPLY |
605 | }; | |
071a3ae7 | 606 | |
607 | enum { | |
608 | SENT, | |
609 | RECV | |
610 | }; | |
de2a0782 | 611 | |
612 | /* | |
613 | * These are field indicators for raw cache-cache netdb transfers | |
614 | */ | |
615 | enum { | |
58a6c186 | 616 | NETDB_EX_NONE, |
617 | NETDB_EX_NETWORK, | |
618 | NETDB_EX_RTT, | |
619 | NETDB_EX_HOPS | |
de2a0782 | 620 | }; |