2 * Copyright (C) 1996-2016 The Squid Software Foundation and contributors
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
9 #ifndef _SQUID_SRC_HTTP_STATUSCODE_H
10 #define _SQUID_SRC_HTTP_STATUSCODE_H
16 * These basic HTTP reply status codes are defined by RFC 2616 unless otherwise stated.
17 * The IANA registry for HTTP status codes can be found at:
18 * http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
23 scSwitchingProtocols
= 101,
24 scProcessing
= 102, /**< RFC2518 section 10.1 */
25 scEarlyHints
= 103, /**< draft-kazuho-early-hints-status-code */
29 scNonAuthoritativeInformation
= 203,
32 scPartialContent
= 206,
33 scMultiStatus
= 207, /**< RFC2518 section 10.2 / RFC4918 */
34 scAlreadyReported
= 208, /**< RFC5842 */
35 scImUsed
= 226, /**< RFC3229 */
36 scMultipleChoices
= 300,
37 scMovedPermanently
= 301,
42 scTemporaryRedirect
= 307,
43 scPermanentRedirect
= 308, /**< RFC7538 */
46 scPaymentRequired
= 402,
49 scMethodNotAllowed
= 405,
50 scNotAcceptable
= 406,
51 scProxyAuthenticationRequired
= 407,
52 scRequestTimeout
= 408,
55 scLengthRequired
= 411,
56 scPreconditionFailed
= 412,
57 scPayloadTooLarge
= 413,
59 scUnsupportedMediaType
= 415,
60 scRequestedRangeNotSatisfied
= 416,
61 scExpectationFailed
= 417,
62 scMisdirectedRequest
= 421, /**< RFC7540 section 9.1.2 */
63 scUnprocessableEntity
= 422, /**< RFC2518 section 10.3 / RFC4918 */
64 scLocked
= 423, /**< RFC2518 section 10.4 / RFC4918 */
65 scFailedDependency
= 424, /**< RFC2518 section 10.5 / RFC4918 */
66 scUpgradeRequired
= 426,
67 scPreconditionRequired
= 428, /**< RFC6585 */
68 scTooManyRequests
= 429, /**< RFC6585 */
69 scRequestHeaderFieldsTooLarge
= 431, /**< RFC6585 */
70 scUnavailableForLegalReasons
= 451, /**< RFC7725 */
71 scInternalServerError
= 500,
72 scNotImplemented
= 501,
74 scServiceUnavailable
= 503,
75 scGatewayTimeout
= 504,
76 scHttpVersionNotSupported
= 505,
77 scVariantAlsoNegotiates
= 506, /**< RFC2295 */
78 scInsufficientStorage
= 507, /**< RFC2518 section 10.6 / RFC4918 */
79 scLoopDetected
= 508, /**< RFC5842 */
80 scNotExtended
= 510, /**< RFC2774 */
81 scNetworkAuthenticationRequired
= 511, /**< RFC6585 */
83 // The 6xx codes below are for internal use only: Bad requests result
84 // in scBadRequest; bad responses in scGatewayTimeout.
86 scInvalidHeader
= 600, /**< Squid header parsing error */
87 scHeaderTooLarge
= 601 /* Header too large to process */
90 const char *StatusCodeString(const Http::StatusCode status
);
94 #endif /* _SQUID_SRC_HTTP_STATUSCODE_H */