1 // Copyright 2013 The Chromium Authors 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // This file intentionally does not have header guards, it's included 6 // inside a macro to generate enum values. The following line silences a 7 // presubmit and Tricium warning that would otherwise be triggered by this: 8 // no-include-guard-because-multiply-included 9 // NOLINT(build/header_guard) 10 11 // This file contains the list of HTTP status codes. Taken from IANA HTTP Status 12 // Code Registry. 13 // http://www.iana.org/assignments/http-status-codes/http-status-codes.xml 14 15 #ifndef HTTP_STATUS_ENUM_VALUE 16 #error "Do #include net/http/http_status_code.h instead of this file directly." 17 #endif 18 19 // Informational 1xx 20 HTTP_STATUS_ENUM_VALUE(CONTINUE, 100, "Continue") 21 HTTP_STATUS_ENUM_VALUE(SWITCHING_PROTOCOLS, 101, "Switching Protocols") 22 HTTP_STATUS_ENUM_VALUE(PROCESSING, 102, "Processing") 23 HTTP_STATUS_ENUM_VALUE(EARLY_HINTS, 103, "Early Hints") 24 25 // Successful 2xx 26 HTTP_STATUS_ENUM_VALUE(OK, 200, "OK") 27 HTTP_STATUS_ENUM_VALUE(CREATED, 201, "Created") 28 HTTP_STATUS_ENUM_VALUE(ACCEPTED, 202, "Accepted") 29 HTTP_STATUS_ENUM_VALUE(NON_AUTHORITATIVE_INFORMATION, 30 203, 31 "Non-Authoritative Information") 32 HTTP_STATUS_ENUM_VALUE(NO_CONTENT, 204, "No Content") 33 HTTP_STATUS_ENUM_VALUE(RESET_CONTENT, 205, "Reset Content") 34 HTTP_STATUS_ENUM_VALUE(PARTIAL_CONTENT, 206, "Partial Content") 35 HTTP_STATUS_ENUM_VALUE(MULTI_STATUS, 207, "Multi-Status") 36 HTTP_STATUS_ENUM_VALUE(ALREADY_REPORTED, 208, "Already Reported") 37 HTTP_STATUS_ENUM_VALUE(IM_USED, 226, "IM Used") 38 39 // Redirection 3xx 40 HTTP_STATUS_ENUM_VALUE(MULTIPLE_CHOICES, 300, "Multiple Choices") 41 HTTP_STATUS_ENUM_VALUE(MOVED_PERMANENTLY, 301, "Moved Permanently") 42 HTTP_STATUS_ENUM_VALUE(FOUND, 302, "Found") 43 HTTP_STATUS_ENUM_VALUE(SEE_OTHER, 303, "See Other") 44 HTTP_STATUS_ENUM_VALUE(NOT_MODIFIED, 304, "Not Modified") 45 HTTP_STATUS_ENUM_VALUE(USE_PROXY, 305, "Use Proxy") 46 // 306 is no longer used. 47 HTTP_STATUS_ENUM_VALUE(TEMPORARY_REDIRECT, 307, "Temporary Redirect") 48 HTTP_STATUS_ENUM_VALUE(PERMANENT_REDIRECT, 308, "Permanent Redirect") 49 50 // Client error 4xx 51 HTTP_STATUS_ENUM_VALUE(BAD_REQUEST, 400, "Bad Request") 52 HTTP_STATUS_ENUM_VALUE(UNAUTHORIZED, 401, "Unauthorized") 53 HTTP_STATUS_ENUM_VALUE(PAYMENT_REQUIRED, 402, "Payment Required") 54 HTTP_STATUS_ENUM_VALUE(FORBIDDEN, 403, "Forbidden") 55 HTTP_STATUS_ENUM_VALUE(NOT_FOUND, 404, "Not Found") 56 HTTP_STATUS_ENUM_VALUE(METHOD_NOT_ALLOWED, 405, "Method Not Allowed") 57 HTTP_STATUS_ENUM_VALUE(NOT_ACCEPTABLE, 406, "Not Acceptable") 58 HTTP_STATUS_ENUM_VALUE(PROXY_AUTHENTICATION_REQUIRED, 59 407, 60 "Proxy Authentication Required") 61 HTTP_STATUS_ENUM_VALUE(REQUEST_TIMEOUT, 408, "Request Timeout") 62 HTTP_STATUS_ENUM_VALUE(CONFLICT, 409, "Conflict") 63 HTTP_STATUS_ENUM_VALUE(GONE, 410, "Gone") 64 HTTP_STATUS_ENUM_VALUE(LENGTH_REQUIRED, 411, "Length Required") 65 HTTP_STATUS_ENUM_VALUE(PRECONDITION_FAILED, 412, "Precondition Failed") 66 HTTP_STATUS_ENUM_VALUE(REQUEST_ENTITY_TOO_LARGE, 67 413, 68 "Request Entity Too Large") 69 HTTP_STATUS_ENUM_VALUE(REQUEST_URI_TOO_LONG, 414, "Request-URI Too Long") 70 HTTP_STATUS_ENUM_VALUE(UNSUPPORTED_MEDIA_TYPE, 415, "Unsupported Media Type") 71 HTTP_STATUS_ENUM_VALUE(REQUESTED_RANGE_NOT_SATISFIABLE, 72 416, 73 "Requested Range Not Satisfiable") 74 HTTP_STATUS_ENUM_VALUE(EXPECTATION_FAILED, 417, "Expectation Failed") 75 // 418 returned by Cloud Print. 76 HTTP_STATUS_ENUM_VALUE(INVALID_XPRIVET_TOKEN, 418, "Invalid XPrivet Token") 77 HTTP_STATUS_ENUM_VALUE(MISDIRECTED_REQUEST, 421, "Misdirected Request") 78 HTTP_STATUS_ENUM_VALUE(UNPROCESSABLE_CONTENT, 422, "Unprocessable Content") 79 HTTP_STATUS_ENUM_VALUE(LOCKED, 423, "Locked") 80 HTTP_STATUS_ENUM_VALUE(FAILED_DEPENDENCY, 424, "Failed Dependency") 81 HTTP_STATUS_ENUM_VALUE(TOO_EARLY, 425, "Too Early") 82 HTTP_STATUS_ENUM_VALUE(UPGRADE_REQUIRED, 426, "Upgrade Required") 83 HTTP_STATUS_ENUM_VALUE(PRECONDITION_REQUIRED, 428, "Precondition Required") 84 HTTP_STATUS_ENUM_VALUE(TOO_MANY_REQUESTS, 429, "Too Many Requests") 85 HTTP_STATUS_ENUM_VALUE(REQUEST_HEADER_FIELDS_TOO_LARGE, 86 431, 87 "Request Header Fields Too Large") 88 HTTP_STATUS_ENUM_VALUE(UNAVAILABLE_FOR_LEGAL_REASONS, 89 451, 90 "Unavailable For Legal Reasons") 91 92 // Server error 5xx 93 HTTP_STATUS_ENUM_VALUE(INTERNAL_SERVER_ERROR, 500, "Internal Server Error") 94 HTTP_STATUS_ENUM_VALUE(NOT_IMPLEMENTED, 501, "Not Implemented") 95 HTTP_STATUS_ENUM_VALUE(BAD_GATEWAY, 502, "Bad Gateway") 96 HTTP_STATUS_ENUM_VALUE(SERVICE_UNAVAILABLE, 503, "Service Unavailable") 97 HTTP_STATUS_ENUM_VALUE(GATEWAY_TIMEOUT, 504, "Gateway Timeout") 98 HTTP_STATUS_ENUM_VALUE(VERSION_NOT_SUPPORTED, 505, "HTTP Version Not Supported") 99 HTTP_STATUS_ENUM_VALUE(VARIANT_ALSO_NEGOTIATES, 506, "Variant Also Negotiates") 100 HTTP_STATUS_ENUM_VALUE(INSUFFICIENT_STORAGE, 507, "Insufficient Storage") 101 HTTP_STATUS_ENUM_VALUE(LOOP_DETECTED, 508, "Loop Detected") 102 HTTP_STATUS_ENUM_VALUE(NOT_EXTENDED_OBSOLETED, 510, "Not Extended (Obsoleted)") 103 HTTP_STATUS_ENUM_VALUE(NETWORK_AUTHENTICATION_REQUIRED, 104 511, 105 "Network Authentication Required") 106 107 // Max value for histograms. Should not be recorded. 108 HTTP_STATUS_ENUM_VALUE(STATUS_CODE_MAX, 600, "HTTP Status Code Max") 109