3 * $Id: enums.h,v 1.262 2008/02/26 21:49:34 amosjeffries Exp $
6 * SQUID Web Proxy Cache http://www.squid-cache.org/
7 * ----------------------------------------------------------
9 * Squid is the result of efforts by numerous individuals from
10 * the Internet community; see the CONTRIBUTORS file for full
11 * details. Many organizations have provided support for Squid's
12 * development; see the SPONSORS file for full details. Squid is
13 * Copyrighted (C) 2001 by the Regents of the University of
14 * California; see the COPYRIGHT file for full details. Squid
15 * incorporates software developed and/or copyrighted by other
16 * sources; see the CREDITS file for full details.
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.
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.
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.
41 LOG_TCP_REFRESH_UNMODIFIED
, // refresh from origin revalidated existing entry
42 LOG_TCP_REFRESH_FAIL
, // refresh from origin failed
43 LOG_TCP_REFRESH_MODIFIED
, // refresh from origin replaced existing entry
44 LOG_TCP_CLIENT_REFRESH_MISS
,
46 LOG_TCP_SWAPFAIL_MISS
,
72 ERR_SECURE_CONNECT_FAIL
,
79 ERR_FORWARDING_DENIED
,
86 ERR_CACHE_ACCESS_DENIED
,
87 ERR_CACHE_MGR_ACCESS_DENIED
,
88 ERR_SQUID_SIGNATURE
, /* not really an error */
89 ERR_FTP_PUT_CREATED
, /* !error,a note that the file was created */
90 ERR_FTP_PUT_MODIFIED
, /* modified, !created */
95 ERR_ONLY_IF_CACHED_MISS
, /* failure to satisfy only-if-cached request */
98 ERR_ESI
, /* Failure to perform ESI processing */
172 #if USE_CACHE_DIGESTS
183 /// \ingroup ServerProtocolICPAPI
212 typedef enum _mem_status_t
{
259 HTTP_STATUS_NONE
= 0,
261 HTTP_SWITCHING_PROTOCOLS
= 101,
262 HTTP_PROCESSING
= 102, /* RFC2518 section 10.1 */
266 HTTP_NON_AUTHORITATIVE_INFORMATION
= 203,
267 HTTP_NO_CONTENT
= 204,
268 HTTP_RESET_CONTENT
= 205,
269 HTTP_PARTIAL_CONTENT
= 206,
270 HTTP_MULTI_STATUS
= 207, /* RFC2518 section 10.2 */
271 HTTP_MULTIPLE_CHOICES
= 300,
272 HTTP_MOVED_PERMANENTLY
= 301,
273 HTTP_MOVED_TEMPORARILY
= 302,
274 HTTP_SEE_OTHER
= 303,
275 HTTP_NOT_MODIFIED
= 304,
276 HTTP_USE_PROXY
= 305,
277 HTTP_TEMPORARY_REDIRECT
= 307,
278 HTTP_BAD_REQUEST
= 400,
279 HTTP_UNAUTHORIZED
= 401,
280 HTTP_PAYMENT_REQUIRED
= 402,
281 HTTP_FORBIDDEN
= 403,
282 HTTP_NOT_FOUND
= 404,
283 HTTP_METHOD_NOT_ALLOWED
= 405,
284 HTTP_NOT_ACCEPTABLE
= 406,
285 HTTP_PROXY_AUTHENTICATION_REQUIRED
= 407,
286 HTTP_REQUEST_TIMEOUT
= 408,
289 HTTP_LENGTH_REQUIRED
= 411,
290 HTTP_PRECONDITION_FAILED
= 412,
291 HTTP_REQUEST_ENTITY_TOO_LARGE
= 413,
292 HTTP_REQUEST_URI_TOO_LARGE
= 414,
293 HTTP_UNSUPPORTED_MEDIA_TYPE
= 415,
294 HTTP_REQUESTED_RANGE_NOT_SATISFIABLE
= 416,
295 HTTP_EXPECTATION_FAILED
= 417,
296 HTTP_UNPROCESSABLE_ENTITY
= 422, /* RFC2518 section 10.3 */
297 HTTP_LOCKED
= 423, /* RFC2518 section 10.4 */
298 HTTP_FAILED_DEPENDENCY
= 424, /* RFC2518 section 10.5 */
299 HTTP_INTERNAL_SERVER_ERROR
= 500,
300 HTTP_NOT_IMPLEMENTED
= 501,
301 HTTP_BAD_GATEWAY
= 502,
302 HTTP_SERVICE_UNAVAILABLE
= 503,
303 HTTP_GATEWAY_TIMEOUT
= 504,
304 HTTP_HTTP_VERSION_NOT_SUPPORTED
= 505,
305 HTTP_INSUFFICIENT_STORAGE
= 507, /* RFC2518 section 10.6 */
306 HTTP_INVALID_HEADER
= 600, /* Squid header parsing error */
307 HTTP_HEADER_TOO_LARGE
= 601 /* Header too large to process */
311 * These are for StoreEntry->flag, which is defined as a SHORT
313 * NOTE: These flags are written to swap.state, so think very carefully
314 * about deleting or re-assigning!
333 * These are for client Streams. Each node in the stream can be queried for
337 STREAM_NONE
, /* No particular status */
338 STREAM_COMPLETE
, /* All data has been flushed, no more reads allowed */
339 /* an unpredicted end has occured, no more
340 * reads occured, but no need to tell
341 * downstream that an error occured
343 STREAM_UNPLANNED_COMPLETE
,
344 /* An error has occured in this node or an above one,
345 * and the node is not generating an error body / it's
349 } clientStream_status_t
;
354 ACCESS_REQ_PROXY_AUTH
358 AUTH_ACL_CHALLENGE
= -2,
359 AUTH_ACL_HELPER
= -1,
360 AUTH_ACL_CANNOT_AUTHENTICATE
= 0,
361 AUTH_AUTHENTICATED
= 1
365 AUTH_UNKNOWN
, /* default */
370 AUTH_BROKEN
/* known type, but broken data */
373 /* stateful helper callback response codes */
379 } stateful_helper_callback_t
;
381 /* stateful helper reservation info */
383 S_HELPER_FREE
, /* available for requests */
384 S_HELPER_RESERVED
, /* in a reserved state - no active request, but state data in the helper shouldn't be disturbed */
385 S_HELPER_DEFERRED
/* available for requests, and at least one more will come from a previous caller with the server pointer */
386 } stateful_helper_reserve_t
;
406 MEM_ACL_DENY_INFO_LIST
,
408 #if USE_CACHE_DIGESTS
420 MEM_HTTP_HDR_CONTENT_RANGE
,
437 STORE_LOG_SWAPOUTFAIL
449 /* parse state of HttpReply or HttpRequest */
451 psReadyToParseStartLine
= 0,
452 psReadyToParseHeaders
,
475 * These are field indicators for raw cache-cache netdb transfers
485 * Return codes from checkVary(request)
495 * Store digest state enum
504 } digest_read_state_t
;
506 /* Distinguish between Request and Reply (for header mangling) */
513 /* CygWin & Windows NT Port */
516 * Supported Windows OS types codes
545 DISABLE_PMTU_TRANSPARENT
550 * This should be in htcp.h but because neighborsHtcpClear is defined in
551 * protos.h it has to be here.
555 HTCP_CLR_INVALIDATION
,
559 #endif /* SQUID_ENUMS_H */