From: Amos Jeffries Date: Fri, 1 Jan 2010 21:16:57 +0000 (+1300) Subject: Detatch status code enum from enums.h X-Git-Tag: SQUID_3_2_0_1~485 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6feb0e7c07e56cac67bb91987a7cf2975704e5aa;p=thirdparty%2Fsquid.git Detatch status code enum from enums.h --- diff --git a/src/HttpMsg.h b/src/HttpMsg.h index 2c52687689..a707b1c57b 100644 --- a/src/HttpMsg.h +++ b/src/HttpMsg.h @@ -33,9 +33,9 @@ #ifndef SQUID_HTTPMSG_H #define SQUID_HTTPMSG_H -#include "enums.h" #include "typedefs.h" #include "HttpHeader.h" +#include "HttpStatusCode.h" #include "HttpVersion.h" #include "BodyPipe.h" diff --git a/src/HttpStatusCode.h b/src/HttpStatusCode.h new file mode 100644 index 0000000000..46c5d8179d --- /dev/null +++ b/src/HttpStatusCode.h @@ -0,0 +1,59 @@ +#ifndef _SQUID_SRC_HTTP_STATUSCODE_H +#define _SQUID_SRC_HTTP_STATUSCODE_H + +/** + * These basic HTTP reply status codes are defined by RFC 2616 unless otherwise stated. + */ +typedef enum { + HTTP_STATUS_NONE = 0, + HTTP_CONTINUE = 100, + HTTP_SWITCHING_PROTOCOLS = 101, + HTTP_PROCESSING = 102, /**< RFC2518 section 10.1 */ + HTTP_OK = 200, + HTTP_CREATED = 201, + HTTP_ACCEPTED = 202, + HTTP_NON_AUTHORITATIVE_INFORMATION = 203, + HTTP_NO_CONTENT = 204, + HTTP_RESET_CONTENT = 205, + HTTP_PARTIAL_CONTENT = 206, + HTTP_MULTI_STATUS = 207, /**< RFC2518 section 10.2 */ + HTTP_MULTIPLE_CHOICES = 300, + HTTP_MOVED_PERMANENTLY = 301, + HTTP_MOVED_TEMPORARILY = 302, + HTTP_SEE_OTHER = 303, + HTTP_NOT_MODIFIED = 304, + HTTP_USE_PROXY = 305, + HTTP_TEMPORARY_REDIRECT = 307, + HTTP_BAD_REQUEST = 400, + HTTP_UNAUTHORIZED = 401, + HTTP_PAYMENT_REQUIRED = 402, + HTTP_FORBIDDEN = 403, + HTTP_NOT_FOUND = 404, + HTTP_METHOD_NOT_ALLOWED = 405, + HTTP_NOT_ACCEPTABLE = 406, + HTTP_PROXY_AUTHENTICATION_REQUIRED = 407, + HTTP_REQUEST_TIMEOUT = 408, + HTTP_CONFLICT = 409, + HTTP_GONE = 410, + HTTP_LENGTH_REQUIRED = 411, + HTTP_PRECONDITION_FAILED = 412, + HTTP_REQUEST_ENTITY_TOO_LARGE = 413, + HTTP_REQUEST_URI_TOO_LARGE = 414, + HTTP_UNSUPPORTED_MEDIA_TYPE = 415, + HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416, + HTTP_EXPECTATION_FAILED = 417, + HTTP_UNPROCESSABLE_ENTITY = 422, /**< RFC2518 section 10.3 */ + HTTP_LOCKED = 423, /**< RFC2518 section 10.4 */ + HTTP_FAILED_DEPENDENCY = 424, /**< RFC2518 section 10.5 */ + HTTP_INTERNAL_SERVER_ERROR = 500, + HTTP_NOT_IMPLEMENTED = 501, + HTTP_BAD_GATEWAY = 502, + HTTP_SERVICE_UNAVAILABLE = 503, + HTTP_GATEWAY_TIMEOUT = 504, + HTTP_HTTP_VERSION_NOT_SUPPORTED = 505, + HTTP_INSUFFICIENT_STORAGE = 507, /**< RFC2518 section 10.6 */ + HTTP_INVALID_HEADER = 600, /**< Squid header parsing error */ + HTTP_HEADER_TOO_LARGE = 601 /* Header too large to process */ +} http_status; + +#endif /* _SQUID_SRC_HTTP_STATUSCODE_H */ diff --git a/src/Makefile.am b/src/Makefile.am index f0bcaadddc..e5130672f5 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -334,6 +334,7 @@ squid_SOURCES = \ $(HTCPSOURCE) \ http.cc \ http.h \ + HttpStatusCode.h \ HttpStatusLine.cc \ HttpStatusLine.h \ HttpHdrCc.cc \ @@ -931,6 +932,7 @@ tests_testHttpReply_SOURCES=\ HttpMsg.cc \ HttpReply.h \ HttpReply.cc \ + HttpStatusCode.h \ HttpStatusLine.h \ HttpStatusLine.cc \ mem.cc \ diff --git a/src/enums.h b/src/enums.h index e06a933f55..d7aa6f8b0a 100644 --- a/src/enums.h +++ b/src/enums.h @@ -34,6 +34,8 @@ #ifndef SQUID_ENUMS_H #define SQUID_ENUMS_H +#include "HttpStatusCode.h" + typedef enum { LOG_TAG_NONE, LOG_TCP_HIT, @@ -156,58 +158,6 @@ typedef enum { PROTO_MAX } protocol_t; -typedef enum { - HTTP_STATUS_NONE = 0, - HTTP_CONTINUE = 100, - HTTP_SWITCHING_PROTOCOLS = 101, - HTTP_PROCESSING = 102, /* RFC2518 section 10.1 */ - HTTP_OK = 200, - HTTP_CREATED = 201, - HTTP_ACCEPTED = 202, - HTTP_NON_AUTHORITATIVE_INFORMATION = 203, - HTTP_NO_CONTENT = 204, - HTTP_RESET_CONTENT = 205, - HTTP_PARTIAL_CONTENT = 206, - HTTP_MULTI_STATUS = 207, /* RFC2518 section 10.2 */ - HTTP_MULTIPLE_CHOICES = 300, - HTTP_MOVED_PERMANENTLY = 301, - HTTP_MOVED_TEMPORARILY = 302, - HTTP_SEE_OTHER = 303, - HTTP_NOT_MODIFIED = 304, - HTTP_USE_PROXY = 305, - HTTP_TEMPORARY_REDIRECT = 307, - HTTP_BAD_REQUEST = 400, - HTTP_UNAUTHORIZED = 401, - HTTP_PAYMENT_REQUIRED = 402, - HTTP_FORBIDDEN = 403, - HTTP_NOT_FOUND = 404, - HTTP_METHOD_NOT_ALLOWED = 405, - HTTP_NOT_ACCEPTABLE = 406, - HTTP_PROXY_AUTHENTICATION_REQUIRED = 407, - HTTP_REQUEST_TIMEOUT = 408, - HTTP_CONFLICT = 409, - HTTP_GONE = 410, - HTTP_LENGTH_REQUIRED = 411, - HTTP_PRECONDITION_FAILED = 412, - HTTP_REQUEST_ENTITY_TOO_LARGE = 413, - HTTP_REQUEST_URI_TOO_LARGE = 414, - HTTP_UNSUPPORTED_MEDIA_TYPE = 415, - HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416, - HTTP_EXPECTATION_FAILED = 417, - HTTP_UNPROCESSABLE_ENTITY = 422, /* RFC2518 section 10.3 */ - HTTP_LOCKED = 423, /* RFC2518 section 10.4 */ - HTTP_FAILED_DEPENDENCY = 424, /* RFC2518 section 10.5 */ - HTTP_INTERNAL_SERVER_ERROR = 500, - HTTP_NOT_IMPLEMENTED = 501, - HTTP_BAD_GATEWAY = 502, - HTTP_SERVICE_UNAVAILABLE = 503, - HTTP_GATEWAY_TIMEOUT = 504, - HTTP_HTTP_VERSION_NOT_SUPPORTED = 505, - HTTP_INSUFFICIENT_STORAGE = 507, /* RFC2518 section 10.6 */ - HTTP_INVALID_HEADER = 600, /* Squid header parsing error */ - HTTP_HEADER_TOO_LARGE = 601 /* Header too large to process */ -} http_status; - /* * These are for StoreEntry->flag, which is defined as a SHORT * diff --git a/src/protos.h b/src/protos.h index d7e7642e9c..d115190c47 100644 --- a/src/protos.h +++ b/src/protos.h @@ -227,6 +227,7 @@ SQUIDCEXTERN const char *httpMakeVaryMark(HttpRequest * request, HttpReply const SQUIDCEXTERN int etagParseInit(ETag * etag, const char *str); SQUIDCEXTERN int etagIsEqual(const ETag * tag1, const ETag * tag2); +#include "HttpStatusCode.h" SQUIDCEXTERN const char *httpStatusString(http_status status); /* Http Body */