| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581 |
- /*
- * Copyright (C) 2013 Neo Visionaries Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- #ifndef FBHTTPStatusCodes_h
- #define FBHTTPStatusCodes_h
- //----------------------------------------------------------------------
- // Typedef
- //----------------------------------------------------------------------
- /**
- * HTTP status codes.
- *
- * The list here is based on the description at Wikipedia.
- * The initial version of this list was written on April 20, 2013.
- *
- * @see <a href="http://en.wikipedia.org/wiki/List_of_HTTP_status_codes">List of HTTP status codes</a>
- */
- typedef enum
- {
- /*--------------------------------------------------
- * 1xx Informational
- *------------------------------------------------*/
- /**
- * 100 Continue.
- */
- kHTTPStatusCodeContinue = 100,
- /**
- * 101 Switching Protocols.
- */
- kHTTPStatusCodeSwitchingProtocols = 101,
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_WEBDAV) && !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_2518)
- /**
- * 103 Processing (WebDAV; RFC 2518).
- */
- kHTTPStatusCodeProcessing = 102,
- #endif
- /*--------------------------------------------------
- * 2xx Success
- *------------------------------------------------*/
- /**
- * 200 OK.
- */
- kHTTPStatusCodeOK = 200,
- /**
- * 201 Created.
- */
- kHTTPStatusCodeCreated = 201,
- /**
- * 202 Accepted.
- */
- kHTTPStatusCodeAccepted = 202,
- /**
- * 203 Non-Authoritative Information (since HTTP/1.1).
- */
- kHTTPStatusCodeNonAuthoritativeInformation = 203,
- /**
- * 204 No Content.
- */
- kHTTPStatusCodeNoContent = 204,
- /**
- * 205 Reset Content.
- */
- kHTTPStatusCodeResetContent = 205,
- /**
- * 206 Partial Content.
- */
- kHTTPStatusCodePartialContent = 206,
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_WEBDAV) && !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_4918)
- /**
- * 207 Multi-Status (WebDAV; RFC 4918).
- */
- kHTTPStatusCodeMultiStatus = 207,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_WEBDAV) && !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_5842)
- /**
- * 208 Already Reported (WebDAV; RFC 5842).
- */
- kHTTPStatusCodeAlreadyReported = 208,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_3229)
- /**
- * 226 IM Used (RFC 3229)
- */
- kHTTPStatusCodeIMUsed = 226,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP) && !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_2326)
- /**
- * 250 Low on Storage Space (RTSP; RFC 2326).
- */
- kHTTPStatusCodeLowOnStorageSpace = 250,
- #endif
- /*--------------------------------------------------
- * 3xx Redirection
- *------------------------------------------------*/
- /**
- * 300 Multiple Choices.
- */
- kHTTPStatusCodeMultipleChoices = 300,
- /**
- * 301 Moved Permanently.
- */
- kHTTPStatusCodeMovedPermanently = 301,
- /**
- * 302 Found.
- */
- kHTTPStatusCodeFound = 302,
- /**
- * 303 See Other (since HTTP/1.1).
- */
- kHTTPStatusCodeSeeOther = 303,
- /**
- * 304 Not Modified.
- */
- kHTTPStatusCodeNotModified = 304,
- /**
- * 305 Use Proxy (since HTTP/1.1).
- */
- kHTTPStatusCodeUseProxy = 305,
- /**
- * 306 Switch Proxy.
- */
- kHTTPStatusCodeSwitchProxy = 306,
- /**
- * 307 Temporary Redirect (since HTTP/1.1).
- */
- kHTTPStatusCodeTemporaryRedirect = 307,
- /**
- * 308 Permanent Redirect (approved as experimental RFC).
- */
- kHTTPStatusCodePermanentRedirect = 308,
- /*--------------------------------------------------
- * 4xx Client Error
- *------------------------------------------------*/
- /**
- * 400 Bad Request.
- */
- kHTTPStatusCodeBadRequest = 400,
- /**
- * 401 Unauthorized.
- */
- kHTTPStatusCodeUnauthorized = 401,
- /**
- * 402 Payment Required.
- */
- kHTTPStatusCodePaymentRequired = 402,
- /**
- * 403 Forbidden.
- */
- kHTTPStatusCodeForbidden = 403,
- /**
- * 404 Not Found.
- */
- kHTTPStatusCodeNotFound = 404,
- /**
- * 405 Method Not Allowed.
- */
- kHTTPStatusCodeMethodNotAllowed = 405,
- /**
- * 406 Not Acceptable.
- */
- kHTTPStatusCodeNotAcceptable = 406,
- /**
- * 407 Proxy Authentication Required.
- */
- kHTTPStatusCodeProxyAuthenticationRequired = 407,
- /**
- * 408 Request Timeout.
- */
- kHTTPStatusCodeRequestTimeout = 408,
- /**
- * 409 Conflict.
- */
- kHTTPStatusCodeConflict = 409,
- /**
- * 410 Gone.
- */
- kHTTPStatusCodeGone = 410,
- /**
- * 411 Length Required.
- */
- kHTTPStatusCodeLengthRequired = 411,
- /**
- * 412 Precondition Failed.
- */
- kHTTPStatusCodePreconditionFailed = 412,
- /**
- * 413 Request Entity Too Large.
- */
- kHTTPStatusCodeRequestEntityTooLarge = 413,
- /**
- * 414 Request-URI Too Long.
- */
- kHTTPStatusCodeRequestURITooLong = 414,
- /**
- * 415 Unsupported Media Type.
- */
- kHTTPStatusCodeUnsupportedMediaType = 415,
- /**
- * 416 Requested Range Not Satisfiable.
- */
- kHTTPStatusCodeRequestedRangeNotSatisfiable = 416,
- /**
- * 417 Expectation Failed.
- */
- kHTTPStatusCodeExpectationFailed = 417,
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_2324)
- /**
- * 418 I'm a teapot (RFC 2324).
- */
- kHTTPStatusCodeImATeapot = 418,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_TWITTER)
- /**
- * 420 Enhance Your Calm (Twitter).
- */
- kHTTPStatusCodeEnhanceYourCalm = 420,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_WEBDAV) && !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_4918)
- /**
- * 422 Unprocessable Entity (WebDAV; RFC 4918).
- */
- kHTTPStatusCodeUnprocessableEntity = 422,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_WEBDAV) && !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_4918)
- /**
- * 423 Locked (WebDAV; RFC 4918).
- */
- kHTTPStatusCodeLocked = 423,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_WEBDAV) && !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_4918)
- /**
- * 424 Failed Dependency (WebDAV; RFC 4918).
- */
- kHTTPStatusCodeFailedDependency = 424,
- #endif
- /**
- * 425 Unordered Collection (Internet draft).
- */
- kHTTPStatusCodeUnorderedCollection = 425,
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_2817)
- /**
- * 426 Upgrade Required (RFC 2817).
- */
- kHTTPStatusCodeUpgradeRequired = 426,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_6585)
- /**
- * 428 Precondition Required (RFC 6585).
- */
- kHTTPStatusCodePreconditionRequired = 428,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_6585)
- /**
- * 429 Too Many Requests (RFC 6585).
- */
- kHTTPStatusCodeTooManyRequests = 429,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_6585)
- /**
- * 431 Request Header Fields Too Large (RFC 6585).
- */
- kHTTPStatusCodeRequestHeaderFieldsTooLarge = 431,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_NGINX)
- /**
- * 444 No Response (Nginx).
- */
- kHTTPStatusCodeNoResponse = 444,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_MICROSOFT)
- /**
- * 449 Retry With (Microsoft).
- */
- kHTTPStatusCodeRetryWith = 449,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_MICROSOFT)
- /**
- * 450 Blocked by Windows Parental Controls (Microsoft).
- */
- kHTTPStatusCodeBlockedByWindowsParentalControls = 450,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 451 Parameter Not Understood (RTSP).
- */
- kHTTPStatusCodeParameterNotUnderstood = 451,
- #endif
- /**
- * 451 Unavailable For Legal Reasons (Internet draft).
- */
- kHTTPStatusCodeUnavailableForLegalReasons = 451,
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_MICROSOFT)
- /**
- * 451 Redirect (Microsoft).
- */
- kHTTPStatusCodeRedirect = 451,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 452 Conference Not Found (RTSP).
- */
- kHTTPStatusCodeConferenceNotFound = 452,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 453 Not Enough Bandwidth (RTSP).
- */
- kHTTPStatusCodeNotEnoughBandwidth = 453,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 454 Session Not Found (RTSP).
- */
- kHTTPStatusCodeSessionNotFound = 454,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 455 Method Not Valid in This State (RTSP).
- */
- kHTTPStatusCodeMethodNotValidInThisState = 455,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 456 Header Field Not Valid for Resource (RTSP).
- */
- kHTTPStatusCodeHeaderFieldNotValidForResource = 456,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 457 Invalid Range (RTSP).
- */
- kHTTPStatusCodeInvalidRange = 457,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 458 Parameter Is Read-Only (RTSP).
- */
- kHTTPStatusCodeParameterIsReadOnly = 458,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 459 Aggregate Operation Not Allowed (RTSP).
- */
- kHTTPStatusCodeAggregateOperationNotAllowed = 459,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 460 Only Aggregate Operation Allowed (RTSP).
- */
- kHTTPStatusCodeOnlyAggregateOperationAllowed = 460,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 461 Unsupported Transport (RTSP).
- */
- kHTTPStatusCodeUnsupportedTransport = 461,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 462 Destination Unreachable (RTSP).
- */
- kHTTPStatusCodeDestinationUnreachable = 462,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_NGINX)
- /**
- * 494 Request Header Too Large (Nginx).
- */
- kHTTPStatusCodeRequestHeaderTooLarge = 494,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_NGINX)
- /**
- * 495 Cert Error (Nginx).
- */
- kHTTPStatusCodeCertError = 495,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_NGINX)
- /**
- * 496 No Cert (Nginx).
- */
- kHTTPStatusCodeNoCert = 496,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_NGINX)
- /**
- * 497 HTTP to HTTPS (Nginx).
- */
- kHTTPStatusCodeHTTPToHTTPS = 497,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_NGINX)
- /**
- * 499 Client Closed Request (Nginx).
- */
- kHTTPStatusCodeClientClosedRequest = 499,
- #endif
- /*--------------------------------------------------
- * 5xx Server Error
- *------------------------------------------------*/
- /**
- * 500 Internal Server Error.
- */
- kHTTPStatusCodeInternalServerError = 500,
- /**
- * 501 Not Implemented
- */
- kHTTPStatusCodeNotImplemented = 501,
- /**
- * 502 Bad Gateway.
- */
- kHTTPStatusCodeBadGateway = 502,
- /**
- * 503 Service Unavailable.
- */
- kHTTPStatusCodeServiceUnavailable = 503,
- /**
- * 504 Gateway Timeout.
- */
- kHTTPStatusCodeGatewayTimeout = 504,
- /**
- * 505 HTTP Version Not Supported.
- */
- kHTTPStatusCodeHTTPVersionNotSupported = 505,
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_2295)
- /**
- * 506 Variant Also Negotiates (RFC 2295).
- */
- kHTTPStatusCodeVariantAlsoNegotiates = 506,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_WEBDAV) && !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_4918)
- /**
- * 507 Insufficient Storage (WebDAV; RFC 4918).
- */
- kHTTPStatusCodeInsufficientStorage = 507,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_WEBDAV) && !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_5842)
- /**
- * 508 Loop Detected (WebDAV; RFC 5842).
- */
- kHTTPStatusCodeLoopDetected = 508,
- #endif
- /**
- * 509 Bandwidth Limit Exceeded (Apache bw/limited extension).
- */
- kHTTPStatusCodeBandwidthLimitExceeded = 509,
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_2774)
- /**
- * 510 Not Extended (RFC 2774).
- */
- kHTTPStatusCodeNotExtended = 510,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RFC_6585)
- /**
- * 511 Network Authentication Required (RFC 6585).
- */
- kHTTPStatusCodeNetworkAuthenticationRequired = 511,
- #endif
- #if !defined(HTTP_STATUS_CODES_EXCLUDE_RTSP)
- /**
- * 551 Option not supported (RTSP).
- */
- kHTTPStatusCodeOptionNotSupported = 551,
- #endif
- /**
- * 598 Network read timeout error (Unknown).
- */
- kHTTPStatusCodeNetworkReadTimeoutError = 598,
- /**
- * 599 Network connect timeout error (Unknown).
- */
- kHTTPStatusCodeNetworkConnectTimeoutError = 599
- }
- HTTPStatusCode;
- #endif
|