]> git.ipfire.org Git - thirdparty/squid.git/blame - src/enums.h
merge changes from SQUID_2_3 branch
[thirdparty/squid.git] / src / enums.h
CommitLineData
f892c2bf 1
9cef6668 2/*
7e3ce7b9 3 * $Id: enums.h,v 1.162 1999/12/30 17:36:31 wessels 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
34typedef 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 57typedef enum {
58 ERR_NONE,
59 ERR_READ_TIMEOUT,
60 ERR_LIFETIME_EXP,
9b312a19 61 ERR_READ_ERROR,
62 ERR_WRITE_ERROR,
05b744f3 63 ERR_SHUTTING_DOWN,
9b312a19 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,
b6a2f15e 84 ERR_FTP_NOT_FOUND,
85 ERR_FTP_FORBIDDEN,
86 ERR_FTP_UNAVAILABLE,
ec878047 87 ERR_ONLY_IF_CACHED_MISS, /* failure to satisfy only-if-cached request */
0483b991 88 ERR_TOO_BIG,
9b312a19 89 ERR_MAX
90} err_type;
91
f892c2bf 92typedef enum {
93 ACL_NONE,
94 ACL_SRC_IP,
95 ACL_DST_IP,
ae2c08a2 96 ACL_MY_IP,
f892c2bf 97 ACL_SRC_DOMAIN,
98 ACL_DST_DOMAIN,
d0d41f07 99 ACL_SRC_DOM_REGEX,
100 ACL_DST_DOM_REGEX,
f892c2bf 101 ACL_TIME,
102 ACL_URLPATH_REGEX,
103 ACL_URL_REGEX,
104 ACL_URL_PORT,
7e3ce7b9 105 ACL_MY_PORT,
3898f57f 106#if USE_IDENT
c68e9c6b 107 ACL_IDENT,
3898f57f 108#endif
f892c2bf 109 ACL_PROTO,
110 ACL_METHOD,
111 ACL_BROWSER,
afe95a7e 112 ACL_PROXY_AUTH,
5d6c7aad 113 ACL_SRC_ASN,
114 ACL_DST_ASN,
6b6347d5 115 ACL_SRC_ARP,
dba79ac5 116 ACL_SNMP_COMMUNITY,
bd05e3e3 117 ACL_NETDB_SRC_RTT,
9bc73deb 118 ACL_MAXCONN,
f892c2bf 119 ACL_ENUM_MAX
120} squid_acl;
121
122typedef enum {
123 ACL_LOOKUP_NONE,
124 ACL_LOOKUP_NEEDED,
125 ACL_LOOKUP_PENDING,
73e67ee0 126 ACL_LOOKUP_DONE,
c68e9c6b 127 ACL_PROXY_AUTH_NEEDED
f892c2bf 128} acl_lookup_state;
129
f892c2bf 130enum {
131 FD_NONE,
132 FD_LOG,
133 FD_FILE,
134 FD_SOCKET,
135 FD_PIPE,
136 FD_UNKNOWN
137};
138
139enum {
140 FD_READ,
141 FD_WRITE
142};
143
f892c2bf 144enum {
145 FQDN_CACHED,
146 FQDN_NEGATIVE_CACHED,
147 FQDN_PENDING, /* waiting to be dispatched */
148 FQDN_DISPATCHED /* waiting for reply from dnsserver */
149};
150typedef unsigned int fqdncache_status_t;
151
152enum {
153 IP_CACHED,
154 IP_NEGATIVE_CACHED,
155 IP_PENDING, /* waiting to be dispatched */
156 IP_DISPATCHED /* waiting for reply from dnsserver */
157};
158typedef unsigned int ipcache_status_t;
159
160typedef enum {
161 PEER_NONE,
162 PEER_SIBLING,
163 PEER_PARENT,
164 PEER_MULTICAST
165} peer_t;
166
9fdfc93e 167typedef enum {
168 PEER_SA_NONE,
169 PEER_SA_DIGEST,
69c95dd3 170 PEER_SA_ICP,
171 PEER_SA_NETDB
9fdfc93e 172} peer_select_alg_t;
173
174typedef enum {
175 LOOKUP_NONE,
176 LOOKUP_HIT,
4b4cd312 177 LOOKUP_MISS
9fdfc93e 178} lookup_t;
179
4f087419 180/* recognized or "known" header fields; @?@ add more! */
181typedef enum {
182 HDR_ACCEPT,
d8b249ef 183 HDR_ACCEPT_CHARSET,
184 HDR_ACCEPT_ENCODING,
185 HDR_ACCEPT_LANGUAGE,
de336bbe 186 HDR_ACCEPT_RANGES,
4f087419 187 HDR_AGE,
99edd1c3 188 HDR_ALLOW,
189 HDR_AUTHORIZATION,
4f087419 190 HDR_CACHE_CONTROL,
191 HDR_CONNECTION,
2246b732 192 HDR_CONTENT_BASE,
4f087419 193 HDR_CONTENT_ENCODING,
99edd1c3 194 HDR_CONTENT_LANGUAGE,
4f087419 195 HDR_CONTENT_LENGTH,
2246b732 196 HDR_CONTENT_LOCATION,
4f087419 197 HDR_CONTENT_MD5,
d76fcfa7 198 HDR_CONTENT_RANGE,
4f087419 199 HDR_CONTENT_TYPE,
200 HDR_DATE,
201 HDR_ETAG,
202 HDR_EXPIRES,
99edd1c3 203 HDR_FROM,
4f087419 204 HDR_HOST,
c68e9c6b 205 HDR_IF_MATCH,
99edd1c3 206 HDR_IF_MODIFIED_SINCE,
c68e9c6b 207 HDR_IF_NONE_MATCH,
e17d81d3 208 HDR_IF_RANGE,
4f087419 209 HDR_LAST_MODIFIED,
99edd1c3 210 HDR_LINK,
4f087419 211 HDR_LOCATION,
212 HDR_MAX_FORWARDS,
d8b249ef 213 HDR_MIME_VERSION,
99edd1c3 214 HDR_PRAGMA,
4f087419 215 HDR_PROXY_AUTHENTICATE,
99edd1c3 216 HDR_PROXY_AUTHORIZATION,
217 HDR_PROXY_CONNECTION,
4f087419 218 HDR_PUBLIC,
02922e76 219 HDR_RANGE,
135171fe 220 HDR_REQUEST_RANGE, /* some clients use this, sigh */
99edd1c3 221 HDR_REFERER,
4f087419 222 HDR_RETRY_AFTER,
de336bbe 223 HDR_SERVER,
4f087419 224 HDR_SET_COOKIE,
99edd1c3 225 HDR_TITLE,
4f087419 226 HDR_UPGRADE,
99edd1c3 227 HDR_USER_AGENT,
783e4699 228 HDR_VARY,
99edd1c3 229 HDR_VIA,
4f087419 230 HDR_WARNING,
231 HDR_WWW_AUTHENTICATE,
de336bbe 232 HDR_X_CACHE,
4b4cd312 233 HDR_X_CACHE_LOOKUP, /* tmp hack, remove later */
99edd1c3 234 HDR_X_FORWARDED_FOR,
2246b732 235 HDR_X_REQUEST_URI, /* appended if ADD_X_REQUEST_URI is #defined */
fcc62502 236 HDR_X_SQUID_ERROR,
4f087419 237 HDR_OTHER,
238 HDR_ENUM_END
239} http_hdr_type;
240
241/* server cache-control */
242typedef enum {
7faf2bdb 243 CC_PUBLIC,
244 CC_PRIVATE,
245 CC_NO_CACHE,
246 CC_NO_STORE,
247 CC_NO_TRANSFORM,
248 CC_MUST_REVALIDATE,
249 CC_PROXY_REVALIDATE,
250 CC_MAX_AGE,
7e3ce7b9 251 CC_S_MAXAGE,
d8b249ef 252 CC_ONLY_IF_CACHED,
253 CC_OTHER,
7faf2bdb 254 CC_ENUM_END
255} http_hdr_cc_type;
256
257/* possible types for http header fields */
258typedef enum {
399e85ea 259 ftInvalid = HDR_ENUM_END, /* to catch nasty errors with hdr_id<->fld_type clashes */
7faf2bdb 260 ftInt,
4f7e9dbb 261 ftStr,
7faf2bdb 262 ftDate_1123,
a9771e51 263 ftETag,
02922e76 264 ftPCc,
a9771e51 265 ftPContRange,
02922e76 266 ftPRange,
a9771e51 267 ftDate_1123_or_ETag
7faf2bdb 268} field_type;
4f087419 269
2246b732 270/* possible owners of http header */
271typedef enum {
272 hoNone,
ff6c30e8 273#if USE_HTCP
274 hoHtcpReply,
275#endif
2246b732 276 hoRequest,
277 hoReply
278} http_hdr_owner_type;
279
f892c2bf 280typedef enum {
281 HIER_NONE,
282 DIRECT,
283 SIBLING_HIT,
284 PARENT_HIT,
285 DEFAULT_PARENT,
286 SINGLE_PARENT,
287 FIRSTUP_PARENT,
f892c2bf 288 FIRST_PARENT_MISS,
289 CLOSEST_PARENT_MISS,
69c95dd3 290 CLOSEST_PARENT,
f892c2bf 291 CLOSEST_DIRECT,
292 NO_DIRECT_FAIL,
293 SOURCE_FASTEST,
f892c2bf 294 ROUNDROBIN_PARENT,
6cfa8966 295#if USE_CACHE_DIGESTS
9bc73deb 296 CD_PARENT_HIT,
297 CD_SIBLING_HIT,
afd88fbe 298#endif
299#if USE_CARP
300 CARP,
c127134a 301#endif
6a655df0 302 ANY_OLD_PARENT,
f892c2bf 303 HIER_MAX
304} hier_code;
305
306typedef enum {
27cd7235 307 ICP_INVALID,
308 ICP_QUERY,
309 ICP_HIT,
310 ICP_MISS,
311 ICP_ERR,
312 ICP_SEND,
313 ICP_SENDA,
314 ICP_DATABEG,
315 ICP_DATA,
316 ICP_DATAEND,
317 ICP_SECHO,
318 ICP_DECHO,
58e170f0 319 ICP_NOTIFY,
320 ICP_INVALIDATE,
321 ICP_DELETE,
27cd7235 322 ICP_UNUSED15,
323 ICP_UNUSED16,
324 ICP_UNUSED17,
325 ICP_UNUSED18,
326 ICP_UNUSED19,
327 ICP_UNUSED20,
328 ICP_MISS_NOFETCH,
da2d50d1 329 ICP_DENIED,
27cd7235 330 ICP_HIT_OBJ,
331 ICP_END
f892c2bf 332} icp_opcode;
333
334enum {
335 NOT_IN_MEMORY,
f892c2bf 336 IN_MEMORY
337};
338
339enum {
340 PING_NONE,
341 PING_WAITING,
f892c2bf 342 PING_DONE
343};
344
345enum {
346 STORE_OK,
b7fe0ab0 347 STORE_PENDING
f892c2bf 348};
349
350enum {
8350fe9b 351 SWAPOUT_NONE,
8350fe9b 352 SWAPOUT_WRITING,
353 SWAPOUT_DONE
f892c2bf 354};
355
7405a782 356typedef enum {
5d86029a 357 STORE_NON_CLIENT,
358 STORE_MEM_CLIENT,
359 STORE_DISK_CLIENT
7405a782 360} store_client_t;
74ac2ecb 361
f892c2bf 362enum {
363 METHOD_NONE, /* 000 */
364 METHOD_GET, /* 001 */
365 METHOD_POST, /* 010 */
366 METHOD_PUT, /* 011 */
367 METHOD_HEAD, /* 100 */
368 METHOD_CONNECT, /* 101 */
369 METHOD_TRACE, /* 110 */
710bd872 370 METHOD_PURGE, /* 111 */
1f38f50a 371 METHOD_OPTIONS,
7e3ce7b9 372 METHOD_DELETE, /* RFC2616 section 9.7 */
21e1d500 373 METHOD_PROPFIND,
374 METHOD_PROPPATCH,
375 METHOD_MKCOL,
376 METHOD_COPY,
377 METHOD_MOVE,
378 METHOD_LOCK,
379 METHOD_UNLOCK,
710bd872 380 METHOD_ENUM_END
f892c2bf 381};
382typedef unsigned int method_t;
383
384typedef enum {
385 PROTO_NONE,
386 PROTO_HTTP,
387 PROTO_FTP,
388 PROTO_GOPHER,
389 PROTO_WAIS,
390 PROTO_CACHEOBJ,
391 PROTO_ICP,
86aebcda 392#if USE_HTCP
393 PROTO_HTCP,
394#endif
23d92c64 395 PROTO_URN,
53ad48e6 396 PROTO_WHOIS,
1da5651f 397 PROTO_INTERNAL,
4f3de732 398 PROTO_HTTPS,
f892c2bf 399 PROTO_MAX
400} protocol_t;
9b312a19 401
402typedef enum {
728da2ee 403 HTTP_STATUS_NONE = 0,
9b312a19 404 HTTP_CONTINUE = 100,
405 HTTP_SWITCHING_PROTOCOLS = 101,
7e3ce7b9 406 HTTP_PROCESSING = 102, /* RFC2518 section 10.1 */
9b312a19 407 HTTP_OK = 200,
408 HTTP_CREATED = 201,
409 HTTP_ACCEPTED = 202,
410 HTTP_NON_AUTHORITATIVE_INFORMATION = 203,
411 HTTP_NO_CONTENT = 204,
412 HTTP_RESET_CONTENT = 205,
413 HTTP_PARTIAL_CONTENT = 206,
7e3ce7b9 414 HTTP_MULTI_STATUS = 207, /* RFC2518 section 10.2 */
9b312a19 415 HTTP_MULTIPLE_CHOICES = 300,
416 HTTP_MOVED_PERMANENTLY = 301,
417 HTTP_MOVED_TEMPORARILY = 302,
418 HTTP_SEE_OTHER = 303,
419 HTTP_NOT_MODIFIED = 304,
420 HTTP_USE_PROXY = 305,
421 HTTP_BAD_REQUEST = 400,
422 HTTP_UNAUTHORIZED = 401,
423 HTTP_PAYMENT_REQUIRED = 402,
424 HTTP_FORBIDDEN = 403,
425 HTTP_NOT_FOUND = 404,
426 HTTP_METHOD_NOT_ALLOWED = 405,
427 HTTP_NOT_ACCEPTABLE = 406,
428 HTTP_PROXY_AUTHENTICATION_REQUIRED = 407,
429 HTTP_REQUEST_TIMEOUT = 408,
430 HTTP_CONFLICT = 409,
431 HTTP_GONE = 410,
432 HTTP_LENGTH_REQUIRED = 411,
433 HTTP_PRECONDITION_FAILED = 412,
434 HTTP_REQUEST_ENTITY_TOO_LARGE = 413,
435 HTTP_REQUEST_URI_TOO_LARGE = 414,
436 HTTP_UNSUPPORTED_MEDIA_TYPE = 415,
7e3ce7b9 437 HTTP_UNPROCESSABLE_ENTITY = 422, /* RFC2518 section 10.3 */
438 HTTP_LOCKED = 423, /* RFC2518 section 10.4 */
439 HTTP_FAILED_DEPENDENCY = 424, /* RFC2518 section 10.5 */
9b312a19 440 HTTP_INTERNAL_SERVER_ERROR = 500,
441 HTTP_NOT_IMPLEMENTED = 501,
442 HTTP_BAD_GATEWAY = 502,
443 HTTP_SERVICE_UNAVAILABLE = 503,
444 HTTP_GATEWAY_TIMEOUT = 504,
cb69b4c7 445 HTTP_HTTP_VERSION_NOT_SUPPORTED = 505,
7e3ce7b9 446 HTTP_INSUFFICIENT_STORAGE = 507, /* RFC2518 section 10.6 */
ee1679df 447 HTTP_INVALID_HEADER = 600 /* Squid header parsing error */
9b312a19 448} http_status;
79a15e0a 449
d46a87a8 450/*
451 * These are for StoreEntry->flag, which is defined as a SHORT
452 *
453 * NOTE: These flags are written to swap.state, so think very carefully
454 * about deleting or re-assigning!
455 */
79a15e0a 456enum {
d46a87a8 457 ENTRY_SPECIAL,
458 ENTRY_REVALIDATE,
459 DELAY_SENDING,
460 RELEASE_REQUEST,
461 REFRESH_REQUEST,
462 ENTRY_CACHABLE,
463 ENTRY_DISPATCHED,
464 KEY_PRIVATE,
d46a87a8 465 ENTRY_FWD_HDR_WAIT,
d46a87a8 466 ENTRY_NEGCACHED,
467 ENTRY_VALIDATED,
b7fe0ab0 468 ENTRY_BAD_LENGTH,
9bc73deb 469 ENTRY_ABORTED,
470 ENTRY_DONT_LOG /* hack for gross 'Pump' entries */
79a15e0a 471};
472
fc5d6f7f 473typedef enum {
474 ACCESS_DENIED,
475 ACCESS_ALLOWED,
476 ACCESS_REQ_PROXY_AUTH
477} allow_t;
a97cfa48 478
3f6c0fb2 479#if SQUID_SNMP
a97cfa48 480enum {
be335c22 481 SNMP_C_VIEW,
482 SNMP_C_USER,
483 SNMP_C_COMMUNITY
a97cfa48 484};
067bea91 485
3f6c0fb2 486#endif
487
488typedef enum {
067bea91 489 MEM_NONE,
137ee196 490 MEM_2K_BUF,
067bea91 491 MEM_4K_BUF,
492 MEM_8K_BUF,
c68e9c6b 493 MEM_ACCESSLOGENTRY,
067bea91 494 MEM_ACL,
c68e9c6b 495 MEM_ACLCHECK_T,
067bea91 496 MEM_ACL_ACCESS,
c68e9c6b 497 MEM_ACL_DENY_INFO_LIST,
498 MEM_ACL_IP_DATA,
499 MEM_ACL_LIST,
500 MEM_ACL_NAME_LIST,
ec878047 501 MEM_ACL_PROXY_AUTH_USER,
c68e9c6b 502 MEM_ACL_TIME_DATA,
067bea91 503 MEM_AIO_RESULT_T,
c68e9c6b 504 MEM_CACHEMGR_PASSWD,
505#if USE_CACHE_DIGESTS
506 MEM_CACHE_DIGEST,
507#endif
508 MEM_CLIENTHTTPREQUEST,
509 MEM_CLIENT_INFO,
510 MEM_CLIENT_SOCK_BUF,
067bea91 511 MEM_CLOSE_HANDLER,
c68e9c6b 512 MEM_COMMWRITESTATEDATA,
513 MEM_CONNSTATEDATA,
514#if USE_CACHE_DIGESTS
515 MEM_DIGEST_FETCH_STATE,
516#endif
517 MEM_DISK_BUF,
518 MEM_DLINK_LIST,
519 MEM_DLINK_NODE,
067bea91 520 MEM_DNSSERVER_T,
521 MEM_DNSSTATDATA,
c68e9c6b 522 MEM_DOMAIN_PING,
523 MEM_DOMAIN_TYPE,
524 MEM_DONTFREE,
525 MEM_DREAD_CTRL,
067bea91 526 MEM_DWRITE_Q,
c68e9c6b 527 MEM_ERRORSTATE,
067bea91 528 MEM_FILEMAP,
529 MEM_FQDNCACHE_ENTRY,
59c4d35b 530 MEM_FQDNCACHE_PENDING,
798b0889 531 MEM_FWD_SERVER,
c68e9c6b 532 MEM_FWD_STATE,
067bea91 533 MEM_HASH_LINK,
534 MEM_HASH_TABLE,
c68e9c6b 535 MEM_HELPER,
536 MEM_HELPER_REQUEST,
537 MEM_HELPER_SERVER,
538 MEM_HIERARCHYLOGENTRY,
9bc73deb 539#if USE_HTCP
540 MEM_HTCP_SPECIFIER,
541 MEM_HTCP_DETAIL,
542#endif
7faf2bdb 543 MEM_HTTP_HDR_CC,
d76fcfa7 544 MEM_HTTP_HDR_CONTENT_RANGE,
c68e9c6b 545 MEM_HTTP_HDR_ENTRY,
546 MEM_HTTP_HDR_RANGE,
547 MEM_HTTP_HDR_RANGE_SPEC,
548 MEM_HTTP_REPLY,
cb87dab6 549 MEM_HTTP_STATE_DATA,
067bea91 550 MEM_ICPUDPDATA,
c68e9c6b 551 MEM_ICP_COMMON_T,
552 MEM_ICP_PING_DATA,
553 MEM_INTLIST,
554 MEM_IOSTATS,
067bea91 555 MEM_IPCACHE_ENTRY,
c68e9c6b 556 MEM_IPCACHE_PENDING,
557 MEM_MD5_DIGEST,
558 MEM_MEMOBJECT,
559 MEM_MEM_NODE,
560 MEM_NETDBENTRY,
067bea91 561 MEM_NET_DB_NAME,
562 MEM_NET_DB_PEER,
c68e9c6b 563 MEM_PEER,
e13ee7ad 564#if USE_CACHE_DIGESTS
565 MEM_PEER_DIGEST,
566#endif
067bea91 567 MEM_PINGERECHODATA,
568 MEM_PINGERREPLYDATA,
c68e9c6b 569 MEM_PS_STATE,
067bea91 570 MEM_REFRESH_T,
c68e9c6b 571 MEM_RELIST,
572 MEM_REQUEST_T,
573 MEM_SQUIDCONFIG,
574 MEM_SQUIDCONFIG2,
067bea91 575 MEM_STATCOUNTERS,
c68e9c6b 576 MEM_STMEM_BUF,
577 MEM_STOREENTRY,
578 MEM_STORE_CLIENT,
579 MEM_SWAPDIR,
580 MEM_USHORTLIST,
581 MEM_WORDLIST,
2391a162 582 MEM_STORE_IO,
eb824054 583#if !USE_DNSSERVERS
7b724b86 584 MEM_IDNS_QUERY,
eb824054 585#endif
58a39dc9 586 MEM_EVENT,
067bea91 587 MEM_MAX
3f6c0fb2 588} mem_type;
a21fbb54 589
69c01cd7 590/*
591 * NOTE! We must preserve the order of this list!
592 */
a21fbb54 593enum {
f09f5b26 594 STORE_META_VOID, /* should not come up */
595 STORE_META_KEY_URL, /* key w/ keytype */
596 STORE_META_KEY_SHA,
597 STORE_META_KEY_MD5,
598 STORE_META_URL, /* the url , if not in the header */
599 STORE_META_STD, /* standard metadata */
600 STORE_META_HITMETERING, /* reserved for hit metering */
69c01cd7 601 STORE_META_VALID,
602 STORE_META_END
f09f5b26 603};
604
605enum {
5830cdb3 606 STORE_LOG_CREATE,
607 STORE_LOG_SWAPIN,
608 STORE_LOG_SWAPOUT,
609 STORE_LOG_RELEASE
610};
611
b109de6b 612typedef enum {
5830cdb3 613 SWAP_LOG_NOP,
614 SWAP_LOG_ADD,
b109de6b 615 SWAP_LOG_DEL,
616 SWAP_LOG_MAX
617} swap_log_op;
adba4a64 618
619
620/* parse state of HttpReply or HttpRequest */
2ac76861 621typedef enum {
622 psReadyToParseStartLine = 0,
623 psReadyToParseHeaders,
624 psParsed,
625 psError
adba4a64 626} HttpMsgParseState;
b87b92fb 627
628
629enum {
630 MEDIAN_HTTP,
631 MEDIAN_ICP_QUERY,
632 MEDIAN_DNS,
633 MEDIAN_HIT,
634 MEDIAN_MISS,
635 MEDIAN_NM,
7c9c84ad 636 MEDIAN_NH,
b87b92fb 637 MEDIAN_ICP_REPLY
638};
071a3ae7 639
640enum {
641 SENT,
642 RECV
643};
de2a0782 644
645/*
646 * These are field indicators for raw cache-cache netdb transfers
647 */
648enum {
58a6c186 649 NETDB_EX_NONE,
650 NETDB_EX_NETWORK,
651 NETDB_EX_RTT,
652 NETDB_EX_HOPS
de2a0782 653};
0e4e0e7d 654
655typedef enum {
656 SWAPDIR_UFS,
53fa92a5 657 SWAPDIR_ASYNCUFS,
8798ad05 658#if USE_DISKD
659 SWAPDIR_DISKD,
660#endif
0e4e0e7d 661 SWAPDIR_MAX
662} swapdir_t;