libmicrohttpd

HTTP/1.x server C library (MHD 1.x, stable)
Log | Files | Refs | Submodules | README | LICENSE

commit 8c644fc1f4d498ea489add8d40a68f5d3e5899fa
parent 22300a5257849092ad9e2addceccaa0e99392c19
Author: Evgeny Grin (Karlson2k) <k2k@narod.ru>
Date:   Sat, 30 Oct 2021 14:32:05 +0300

Updated HTTP statuses

Diffstat:
Mcontrib/gen_http_statuses_inserts.sh | 26+++++++++++++-------------
Msrc/include/microhttpd.h | 235++++++++++++++++++++++++++++++++++++++++++-------------------------------------
Msrc/microhttpd/reason_phrase.c | 90++++++++++++++++++++++++++++++++++++++++----------------------------------------
3 files changed, 182 insertions(+), 169 deletions(-)

diff --git a/contrib/gen_http_statuses_inserts.sh b/contrib/gen_http_statuses_inserts.sh @@ -4,7 +4,7 @@ # Generate code and header inserts for HTTP statues # -# Copyright (c) 2019 Karlson2k (Evgeny Grin) <k2k@yandex.ru> +# Copyright (c) 2019-2021 Karlson2k (Evgeny Grin) <k2k@yandex.ru> # # Copying and distribution of this file, with or without modification, are # permitted in any medium without royalty provided the copyright notice @@ -13,25 +13,25 @@ wget -nv https://www.iana.org/assignments/http-status-codes/http-status-codes-1.csv -O http-status-codes-1.csv || exit echo Generating... -echo "/** +echo '/** * @defgroup httpcode HTTP response codes. * These are the status codes defined for HTTP responses. * See: https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml - * Registry export date: $(date -u +%Y-%m-%d) + * Registry export date: '"$(date -u +%Y-%m-%d)"' * @{ */ -" > header_insert_statuses.h && \ +' > header_insert_statuses.h && \ gawk -e 'BEGIN {FPAT = "([^,]*)|(\"[^\"]+\")"} FNR > 1 { gsub(/^\[|^"\[|\]"$|\]$/, "", $3) gsub(/\]\[/, "; ", $3) - if ($1 == 306) { - $2 = "Switch Proxy" + if ($1 == 306) { + $2 = "Switch Proxy" $3 = "Not used! " $3 } - if ($2 != "Unassigned") { - print "/* " $1 sprintf("%-24s", " \"" $2 "\". ") $3 ". */" - print "#define MHD_HTTP_" toupper(gensub(/[^A-Za-z0-0]/, "_", "g", $2)) " "$1"" + if ($2 != "Unassigned" && $2 != "(Unused)") { + printf ("/* %s %-22s %s. */\n", $1, "\"" $2 "\".", $3) + printf ("#define MHD_HTTP_%-27s %s\n", toupper(gensub(/[^A-Za-z0-0]/, "_", "g", $2)), $1) } else { print "" } @@ -39,13 +39,13 @@ FNR > 1 { echo ' /* Not registered non-standard codes */ /* 449 "Reply With". MS IIS extension. */ -#define MHD_HTTP_RETRY_WITH 449 +#define MHD_HTTP_RETRY_WITH 449 /* 450 "Blocked by Windows Parental Controls". MS extension. */ #define MHD_HTTP_BLOCKED_BY_WINDOWS_PARENTAL_CONTROLS 450 /* 509 "Bandwidth Limit Exceeded". Apache extension. */ -#define MHD_HTTP_BANDWIDTH_LIMIT_EXCEEDED 509 +#define MHD_HTTP_BANDWIDTH_LIMIT_EXCEEDED 509 ' >> header_insert_statuses.h && \ gawk -e 'BEGIN { FPAT = "([^,]*)|(\"[^\"]+\")" @@ -76,10 +76,10 @@ FNR > 1 { print "static const struct _MHD_str_w_len " hundreds[$1/100] "_hundred[] = {" } if (num == 306) { - reason = "Switch Proxy" + reason = "Switch Proxy" desc = "Not used! " desc } - if (reason == "Unassigned") next + if (reason == "Unassigned" || reason == "(Unused)") next if (prev_num != num) printf (" /* %s */ %-36s /* %s */\n", prev_num, "_MHD_S_STR_W_LEN (\""prev_reason"\"),", prev_desc) while(++prev_num < num) { diff --git a/src/include/microhttpd.h b/src/include/microhttpd.h @@ -339,114 +339,115 @@ _MHD_DEPR_MACRO ( \ * @defgroup httpcode HTTP response codes. * These are the status codes defined for HTTP responses. * See: https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml - * Registry export date: 2021-06-08 + * Registry export date: 2021-10-30 * @{ */ -/* 100 "Continue". RFC7231, Section 6.2.1. */ -#define MHD_HTTP_CONTINUE 100 -/* 101 "Switching Protocols". RFC7231, Section 6.2.2. */ -#define MHD_HTTP_SWITCHING_PROTOCOLS 101 +/* 100 "Continue". RFC-ietf-httpbis-semantics, Section 15.2.1. */ +#define MHD_HTTP_CONTINUE 100 +/* 101 "Switching Protocols". RFC-ietf-httpbis-semantics, Section 15.2.2. */ +#define MHD_HTTP_SWITCHING_PROTOCOLS 101 /* 102 "Processing". RFC2518. */ -#define MHD_HTTP_PROCESSING 102 +#define MHD_HTTP_PROCESSING 102 /* 103 "Early Hints". RFC8297. */ -#define MHD_HTTP_EARLY_HINTS 103 - -/* 200 "OK". RFC7231, Section 6.3.1. */ -#define MHD_HTTP_OK 200 -/* 201 "Created". RFC7231, Section 6.3.2. */ -#define MHD_HTTP_CREATED 201 -/* 202 "Accepted". RFC7231, Section 6.3.3. */ -#define MHD_HTTP_ACCEPTED 202 -/* 203 "Non-Authoritative Information". RFC7231, Section 6.3.4. */ +#define MHD_HTTP_EARLY_HINTS 103 + +/* 200 "OK". RFC-ietf-httpbis-semantics, Section 15.3.1. */ +#define MHD_HTTP_OK 200 +/* 201 "Created". RFC-ietf-httpbis-semantics, Section 15.3.2. */ +#define MHD_HTTP_CREATED 201 +/* 202 "Accepted". RFC-ietf-httpbis-semantics, Section 15.3.3. */ +#define MHD_HTTP_ACCEPTED 202 +/* 203 "Non-Authoritative Information". RFC-ietf-httpbis-semantics, Section 15.3.4. */ #define MHD_HTTP_NON_AUTHORITATIVE_INFORMATION 203 -/* 204 "No Content". RFC7231, Section 6.3.5. */ -#define MHD_HTTP_NO_CONTENT 204 -/* 205 "Reset Content". RFC7231, Section 6.3.6. */ -#define MHD_HTTP_RESET_CONTENT 205 -/* 206 "Partial Content". RFC7233, Section 4.1. */ -#define MHD_HTTP_PARTIAL_CONTENT 206 +/* 204 "No Content". RFC-ietf-httpbis-semantics, Section 15.3.5. */ +#define MHD_HTTP_NO_CONTENT 204 +/* 205 "Reset Content". RFC-ietf-httpbis-semantics, Section 15.3.6. */ +#define MHD_HTTP_RESET_CONTENT 205 +/* 206 "Partial Content". RFC-ietf-httpbis-semantics, Section 15.3.7. */ +#define MHD_HTTP_PARTIAL_CONTENT 206 /* 207 "Multi-Status". RFC4918. */ -#define MHD_HTTP_MULTI_STATUS 207 +#define MHD_HTTP_MULTI_STATUS 207 /* 208 "Already Reported". RFC5842. */ -#define MHD_HTTP_ALREADY_REPORTED 208 +#define MHD_HTTP_ALREADY_REPORTED 208 /* 226 "IM Used". RFC3229. */ -#define MHD_HTTP_IM_USED 226 - -/* 300 "Multiple Choices". RFC7231, Section 6.4.1. */ -#define MHD_HTTP_MULTIPLE_CHOICES 300 -/* 301 "Moved Permanently". RFC7231, Section 6.4.2. */ -#define MHD_HTTP_MOVED_PERMANENTLY 301 -/* 302 "Found". RFC7231, Section 6.4.3. */ -#define MHD_HTTP_FOUND 302 -/* 303 "See Other". RFC7231, Section 6.4.4. */ -#define MHD_HTTP_SEE_OTHER 303 -/* 304 "Not Modified". RFC7232, Section 4.1. */ -#define MHD_HTTP_NOT_MODIFIED 304 -/* 305 "Use Proxy". RFC7231, Section 6.4.5. */ -#define MHD_HTTP_USE_PROXY 305 -/* 306 "Switch Proxy". Not used! RFC7231, Section 6.4.6. */ -#define MHD_HTTP_SWITCH_PROXY 306 -/* 307 "Temporary Redirect". RFC7231, Section 6.4.7. */ -#define MHD_HTTP_TEMPORARY_REDIRECT 307 -/* 308 "Permanent Redirect". RFC7538. */ -#define MHD_HTTP_PERMANENT_REDIRECT 308 - -/* 400 "Bad Request". RFC7231, Section 6.5.1. */ -#define MHD_HTTP_BAD_REQUEST 400 -/* 401 "Unauthorized". RFC7235, Section 3.1. */ -#define MHD_HTTP_UNAUTHORIZED 401 -/* 402 "Payment Required". RFC7231, Section 6.5.2. */ -#define MHD_HTTP_PAYMENT_REQUIRED 402 -/* 403 "Forbidden". RFC7231, Section 6.5.3. */ -#define MHD_HTTP_FORBIDDEN 403 -/* 404 "Not Found". RFC7231, Section 6.5.4. */ -#define MHD_HTTP_NOT_FOUND 404 -/* 405 "Method Not Allowed". RFC7231, Section 6.5.5. */ -#define MHD_HTTP_METHOD_NOT_ALLOWED 405 -/* 406 "Not Acceptable". RFC7231, Section 6.5.6. */ -#define MHD_HTTP_NOT_ACCEPTABLE 406 -/* 407 "Proxy Authentication Required". RFC7235, Section 3.2. */ +#define MHD_HTTP_IM_USED 226 + +/* 300 "Multiple Choices". RFC-ietf-httpbis-semantics, Section 15.4.1. */ +#define MHD_HTTP_MULTIPLE_CHOICES 300 +/* 301 "Moved Permanently". RFC-ietf-httpbis-semantics, Section 15.4.2. */ +#define MHD_HTTP_MOVED_PERMANENTLY 301 +/* 302 "Found". RFC-ietf-httpbis-semantics, Section 15.4.3. */ +#define MHD_HTTP_FOUND 302 +/* 303 "See Other". RFC-ietf-httpbis-semantics, Section 15.4.4. */ +#define MHD_HTTP_SEE_OTHER 303 +/* 304 "Not Modified". RFC-ietf-httpbis-semantics, Section 15.4.5. */ +#define MHD_HTTP_NOT_MODIFIED 304 +/* 305 "Use Proxy". RFC-ietf-httpbis-semantics, Section 15.4.6. */ +#define MHD_HTTP_USE_PROXY 305 +/* 306 "Switch Proxy". Not used! RFC-ietf-httpbis-semantics, Section 15.4.7. */ +#define MHD_HTTP_SWITCH_PROXY 306 +/* 307 "Temporary Redirect". RFC-ietf-httpbis-semantics, Section 15.4.8. */ +#define MHD_HTTP_TEMPORARY_REDIRECT 307 +/* 308 "Permanent Redirect". RFC-ietf-httpbis-semantics, Section 15.4.9. */ +#define MHD_HTTP_PERMANENT_REDIRECT 308 + +/* 400 "Bad Request". RFC-ietf-httpbis-semantics, Section 15.5.1. */ +#define MHD_HTTP_BAD_REQUEST 400 +/* 401 "Unauthorized". RFC-ietf-httpbis-semantics, Section 15.5.2. */ +#define MHD_HTTP_UNAUTHORIZED 401 +/* 402 "Payment Required". RFC-ietf-httpbis-semantics, Section 15.5.3. */ +#define MHD_HTTP_PAYMENT_REQUIRED 402 +/* 403 "Forbidden". RFC-ietf-httpbis-semantics, Section 15.5.4. */ +#define MHD_HTTP_FORBIDDEN 403 +/* 404 "Not Found". RFC-ietf-httpbis-semantics, Section 15.5.5. */ +#define MHD_HTTP_NOT_FOUND 404 +/* 405 "Method Not Allowed". RFC-ietf-httpbis-semantics, Section 15.5.6. */ +#define MHD_HTTP_METHOD_NOT_ALLOWED 405 +/* 406 "Not Acceptable". RFC-ietf-httpbis-semantics, Section 15.5.7. */ +#define MHD_HTTP_NOT_ACCEPTABLE 406 +/* 407 "Proxy Authentication Required". RFC-ietf-httpbis-semantics, Section 15.5.8. */ #define MHD_HTTP_PROXY_AUTHENTICATION_REQUIRED 407 -/* 408 "Request Timeout". RFC7231, Section 6.5.7. */ -#define MHD_HTTP_REQUEST_TIMEOUT 408 -/* 409 "Conflict". RFC7231, Section 6.5.8. */ -#define MHD_HTTP_CONFLICT 409 -/* 410 "Gone". RFC7231, Section 6.5.9. */ -#define MHD_HTTP_GONE 410 -/* 411 "Length Required". RFC7231, Section 6.5.10. */ -#define MHD_HTTP_LENGTH_REQUIRED 411 -/* 412 "Precondition Failed". RFC7232, Section 4.2; RFC8144, Section 3.2. */ -#define MHD_HTTP_PRECONDITION_FAILED 412 -/* 413 "Payload Too Large". RFC7231, Section 6.5.11. */ -#define MHD_HTTP_PAYLOAD_TOO_LARGE 413 -/* 414 "URI Too Long". RFC7231, Section 6.5.12. */ -#define MHD_HTTP_URI_TOO_LONG 414 -/* 415 "Unsupported Media Type". RFC7231, Section 6.5.13; RFC7694, Section 3. */ -#define MHD_HTTP_UNSUPPORTED_MEDIA_TYPE 415 -/* 416 "Range Not Satisfiable". RFC7233, Section 4.4. */ -#define MHD_HTTP_RANGE_NOT_SATISFIABLE 416 -/* 417 "Expectation Failed". RFC7231, Section 6.5.14. */ -#define MHD_HTTP_EXPECTATION_FAILED 417 - -/* 421 "Misdirected Request". RFC7540, Section 9.1.2. */ -#define MHD_HTTP_MISDIRECTED_REQUEST 421 -/* 422 "Unprocessable Entity". RFC4918. */ -#define MHD_HTTP_UNPROCESSABLE_ENTITY 422 +/* 408 "Request Timeout". RFC-ietf-httpbis-semantics, Section 15.5.9. */ +#define MHD_HTTP_REQUEST_TIMEOUT 408 +/* 409 "Conflict". RFC-ietf-httpbis-semantics, Section 15.5.10. */ +#define MHD_HTTP_CONFLICT 409 +/* 410 "Gone". RFC-ietf-httpbis-semantics, Section 15.5.11. */ +#define MHD_HTTP_GONE 410 +/* 411 "Length Required". RFC-ietf-httpbis-semantics, Section 15.5.12. */ +#define MHD_HTTP_LENGTH_REQUIRED 411 +/* 412 "Precondition Failed". RFC-ietf-httpbis-semantics, Section 15.5.13. */ +#define MHD_HTTP_PRECONDITION_FAILED 412 +/* 413 "Content Too Large". RFC-ietf-httpbis-semantics, Section 15.5.14. */ +#define MHD_HTTP_CONTENT_TOO_LARGE 413 +/* 414 "URI Too Long". RFC-ietf-httpbis-semantics, Section 15.5.15. */ +#define MHD_HTTP_URI_TOO_LONG 414 +/* 415 "Unsupported Media Type". RFC-ietf-httpbis-semantics, Section 15.5.16. */ +#define MHD_HTTP_UNSUPPORTED_MEDIA_TYPE 415 +/* 416 "Range Not Satisfiable". RFC-ietf-httpbis-semantics, Section 15.5.17. */ +#define MHD_HTTP_RANGE_NOT_SATISFIABLE 416 +/* 417 "Expectation Failed". RFC-ietf-httpbis-semantics, Section 15.5.18. */ +#define MHD_HTTP_EXPECTATION_FAILED 417 + + +/* 421 "Misdirected Request". RFC-ietf-httpbis-semantics, Section 15.5.20. */ +#define MHD_HTTP_MISDIRECTED_REQUEST 421 +/* 422 "Unprocessable Content". RFC-ietf-httpbis-semantics, Section 15.5.21. */ +#define MHD_HTTP_UNPROCESSABLE_CONTENT 422 /* 423 "Locked". RFC4918. */ -#define MHD_HTTP_LOCKED 423 +#define MHD_HTTP_LOCKED 423 /* 424 "Failed Dependency". RFC4918. */ -#define MHD_HTTP_FAILED_DEPENDENCY 424 +#define MHD_HTTP_FAILED_DEPENDENCY 424 /* 425 "Too Early". RFC8470. */ -#define MHD_HTTP_TOO_EARLY 425 -/* 426 "Upgrade Required". RFC7231, Section 6.5.15. */ -#define MHD_HTTP_UPGRADE_REQUIRED 426 +#define MHD_HTTP_TOO_EARLY 425 +/* 426 "Upgrade Required". RFC-ietf-httpbis-semantics, Section 15.5.22. */ +#define MHD_HTTP_UPGRADE_REQUIRED 426 /* 428 "Precondition Required". RFC6585. */ -#define MHD_HTTP_PRECONDITION_REQUIRED 428 +#define MHD_HTTP_PRECONDITION_REQUIRED 428 /* 429 "Too Many Requests". RFC6585. */ -#define MHD_HTTP_TOO_MANY_REQUESTS 429 +#define MHD_HTTP_TOO_MANY_REQUESTS 429 /* 431 "Request Header Fields Too Large". RFC6585. */ #define MHD_HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE 431 @@ -454,43 +455,43 @@ _MHD_DEPR_MACRO ( \ /* 451 "Unavailable For Legal Reasons". RFC7725. */ #define MHD_HTTP_UNAVAILABLE_FOR_LEGAL_REASONS 451 -/* 500 "Internal Server Error". RFC7231, Section 6.6.1. */ -#define MHD_HTTP_INTERNAL_SERVER_ERROR 500 -/* 501 "Not Implemented". RFC7231, Section 6.6.2. */ -#define MHD_HTTP_NOT_IMPLEMENTED 501 -/* 502 "Bad Gateway". RFC7231, Section 6.6.3. */ -#define MHD_HTTP_BAD_GATEWAY 502 -/* 503 "Service Unavailable". RFC7231, Section 6.6.4. */ -#define MHD_HTTP_SERVICE_UNAVAILABLE 503 -/* 504 "Gateway Timeout". RFC7231, Section 6.6.5. */ -#define MHD_HTTP_GATEWAY_TIMEOUT 504 -/* 505 "HTTP Version Not Supported". RFC7231, Section 6.6.6. */ -#define MHD_HTTP_HTTP_VERSION_NOT_SUPPORTED 505 +/* 500 "Internal Server Error". RFC-ietf-httpbis-semantics, Section 15.6.1. */ +#define MHD_HTTP_INTERNAL_SERVER_ERROR 500 +/* 501 "Not Implemented". RFC-ietf-httpbis-semantics, Section 15.6.2. */ +#define MHD_HTTP_NOT_IMPLEMENTED 501 +/* 502 "Bad Gateway". RFC-ietf-httpbis-semantics, Section 15.6.3. */ +#define MHD_HTTP_BAD_GATEWAY 502 +/* 503 "Service Unavailable". RFC-ietf-httpbis-semantics, Section 15.6.4. */ +#define MHD_HTTP_SERVICE_UNAVAILABLE 503 +/* 504 "Gateway Timeout". RFC-ietf-httpbis-semantics, Section 15.6.5. */ +#define MHD_HTTP_GATEWAY_TIMEOUT 504 +/* 505 "HTTP Version Not Supported". RFC-ietf-httpbis-semantics, Section 15.6.6. */ +#define MHD_HTTP_HTTP_VERSION_NOT_SUPPORTED 505 /* 506 "Variant Also Negotiates". RFC2295. */ -#define MHD_HTTP_VARIANT_ALSO_NEGOTIATES 506 +#define MHD_HTTP_VARIANT_ALSO_NEGOTIATES 506 /* 507 "Insufficient Storage". RFC4918. */ -#define MHD_HTTP_INSUFFICIENT_STORAGE 507 +#define MHD_HTTP_INSUFFICIENT_STORAGE 507 /* 508 "Loop Detected". RFC5842. */ -#define MHD_HTTP_LOOP_DETECTED 508 +#define MHD_HTTP_LOOP_DETECTED 508 /* 510 "Not Extended". RFC2774. */ -#define MHD_HTTP_NOT_EXTENDED 510 +#define MHD_HTTP_NOT_EXTENDED 510 /* 511 "Network Authentication Required". RFC6585. */ #define MHD_HTTP_NETWORK_AUTHENTICATION_REQUIRED 511 /* Not registered non-standard codes */ /* 449 "Reply With". MS IIS extension. */ -#define MHD_HTTP_RETRY_WITH 449 +#define MHD_HTTP_RETRY_WITH 449 /* 450 "Blocked by Windows Parental Controls". MS extension. */ #define MHD_HTTP_BLOCKED_BY_WINDOWS_PARENTAL_CONTROLS 450 /* 509 "Bandwidth Limit Exceeded". Apache extension. */ -#define MHD_HTTP_BANDWIDTH_LIMIT_EXCEEDED 509 +#define MHD_HTTP_BANDWIDTH_LIMIT_EXCEEDED 509 -/* Deprecated codes */ +/* Deprecated names and codes */ /** @deprecated */ #define MHD_HTTP_METHOD_NOT_ACCEPTABLE \ _MHD_DEPR_IN_MACRO ( \ @@ -500,7 +501,13 @@ _MHD_DEPR_MACRO ( \ /** @deprecated */ #define MHD_HTTP_REQUEST_ENTITY_TOO_LARGE \ _MHD_DEPR_IN_MACRO ( \ - "Value MHD_HTTP_REQUEST_ENTITY_TOO_LARGE is deprecated, use MHD_HTTP_PAYLOAD_TOO_LARGE") \ + "Value MHD_HTTP_REQUEST_ENTITY_TOO_LARGE is deprecated, use MHD_HTTP_CONTENT_TOO_LARGE") \ + 413 + +/** @deprecated */ +#define MHD_HTTP_PAYLOAD_TOO_LARGE \ + _MHD_DEPR_IN_MACRO ( \ + "Value MHD_HTTP_PAYLOAD_TOO_LARGE is deprecated, use MHD_HTTP_CONTENT_TOO_LARGE") \ 413 /** @deprecated */ @@ -516,6 +523,12 @@ _MHD_DEPR_MACRO ( \ 416 /** @deprecated */ +#define MHD_HTTP_UNPROCESSABLE_ENTITY \ + _MHD_DEPR_IN_MACRO ( \ + "Value MHD_HTTP_UNPROCESSABLE_ENTITY is deprecated, use MHD_HTTP_UNPROCESSABLE_CONTENT") \ + 422 + +/** @deprecated */ #define MHD_HTTP_UNORDERED_COLLECTION \ _MHD_DEPR_IN_MACRO ( \ "Value MHD_HTTP_UNORDERED_COLLECTION is deprecated as it was removed from RFC") \ diff --git a/src/microhttpd/reason_phrase.c b/src/microhttpd/reason_phrase.c @@ -37,20 +37,20 @@ static const struct _MHD_str_w_len invalid_hundred[] = { }; static const struct _MHD_str_w_len one_hundred[] = { - /* 100 */ _MHD_S_STR_W_LEN ("Continue"), /* RFC7231, Section 6.2.1 */ - /* 101 */ _MHD_S_STR_W_LEN ("Switching Protocols"), /* RFC7231, Section 6.2.2 */ + /* 100 */ _MHD_S_STR_W_LEN ("Continue"), /* RFC-ietf-httpbis-semantics, Section 15.2.1 */ + /* 101 */ _MHD_S_STR_W_LEN ("Switching Protocols"), /* RFC-ietf-httpbis-semantics, Section 15.2.2 */ /* 102 */ _MHD_S_STR_W_LEN ("Processing"), /* RFC2518 */ /* 103 */ _MHD_S_STR_W_LEN ("Early Hints") /* RFC8297 */ }; static const struct _MHD_str_w_len two_hundred[] = { - /* 200 */ _MHD_S_STR_W_LEN ("OK"), /* RFC7231, Section 6.3.1 */ - /* 201 */ _MHD_S_STR_W_LEN ("Created"), /* RFC7231, Section 6.3.2 */ - /* 202 */ _MHD_S_STR_W_LEN ("Accepted"), /* RFC7231, Section 6.3.3 */ - /* 203 */ _MHD_S_STR_W_LEN ("Non-Authoritative Information"), /* RFC7231, Section 6.3.4 */ - /* 204 */ _MHD_S_STR_W_LEN ("No Content"), /* RFC7231, Section 6.3.5 */ - /* 205 */ _MHD_S_STR_W_LEN ("Reset Content"), /* RFC7231, Section 6.3.6 */ - /* 206 */ _MHD_S_STR_W_LEN ("Partial Content"), /* RFC7233, Section 4.1 */ + /* 200 */ _MHD_S_STR_W_LEN ("OK"), /* RFC-ietf-httpbis-semantics, Section 15.3.1 */ + /* 201 */ _MHD_S_STR_W_LEN ("Created"), /* RFC-ietf-httpbis-semantics, Section 15.3.2 */ + /* 202 */ _MHD_S_STR_W_LEN ("Accepted"), /* RFC-ietf-httpbis-semantics, Section 15.3.3 */ + /* 203 */ _MHD_S_STR_W_LEN ("Non-Authoritative Information"), /* RFC-ietf-httpbis-semantics, Section 15.3.4 */ + /* 204 */ _MHD_S_STR_W_LEN ("No Content"), /* RFC-ietf-httpbis-semantics, Section 15.3.5 */ + /* 205 */ _MHD_S_STR_W_LEN ("Reset Content"), /* RFC-ietf-httpbis-semantics, Section 15.3.6 */ + /* 206 */ _MHD_S_STR_W_LEN ("Partial Content"), /* RFC-ietf-httpbis-semantics, Section 15.3.7 */ /* 207 */ _MHD_S_STR_W_LEN ("Multi-Status"), /* RFC4918 */ /* 208 */ _MHD_S_STR_W_LEN ("Already Reported"), /* RFC5842 */ /* 209 */ {"Unknown", 0}, /* Not used */ @@ -74,45 +74,45 @@ static const struct _MHD_str_w_len two_hundred[] = { }; static const struct _MHD_str_w_len three_hundred[] = { - /* 300 */ _MHD_S_STR_W_LEN ("Multiple Choices"), /* RFC7231, Section 6.4.1 */ - /* 301 */ _MHD_S_STR_W_LEN ("Moved Permanently"), /* RFC7231, Section 6.4.2 */ - /* 302 */ _MHD_S_STR_W_LEN ("Found"), /* RFC7231, Section 6.4.3 */ - /* 303 */ _MHD_S_STR_W_LEN ("See Other"), /* RFC7231, Section 6.4.4 */ - /* 304 */ _MHD_S_STR_W_LEN ("Not Modified"), /* RFC7232, Section 4.1 */ - /* 305 */ _MHD_S_STR_W_LEN ("Use Proxy"), /* RFC7231, Section 6.4.5 */ - /* 306 */ _MHD_S_STR_W_LEN ("Switch Proxy"), /* Not used! RFC7231, Section 6.4.6 */ - /* 307 */ _MHD_S_STR_W_LEN ("Temporary Redirect"), /* RFC7231, Section 6.4.7 */ - /* 308 */ _MHD_S_STR_W_LEN ("Permanent Redirect") /* RFC7538 */ + /* 300 */ _MHD_S_STR_W_LEN ("Multiple Choices"), /* RFC-ietf-httpbis-semantics, Section 15.4.1 */ + /* 301 */ _MHD_S_STR_W_LEN ("Moved Permanently"), /* RFC-ietf-httpbis-semantics, Section 15.4.2 */ + /* 302 */ _MHD_S_STR_W_LEN ("Found"), /* RFC-ietf-httpbis-semantics, Section 15.4.3 */ + /* 303 */ _MHD_S_STR_W_LEN ("See Other"), /* RFC-ietf-httpbis-semantics, Section 15.4.4 */ + /* 304 */ _MHD_S_STR_W_LEN ("Not Modified"), /* RFC-ietf-httpbis-semantics, Section 15.4.5 */ + /* 305 */ _MHD_S_STR_W_LEN ("Use Proxy"), /* RFC-ietf-httpbis-semantics, Section 15.4.6 */ + /* 306 */ _MHD_S_STR_W_LEN ("Switch Proxy"), /* Not used! RFC-ietf-httpbis-semantics, Section 15.4.7 */ + /* 307 */ _MHD_S_STR_W_LEN ("Temporary Redirect"), /* RFC-ietf-httpbis-semantics, Section 15.4.8 */ + /* 308 */ _MHD_S_STR_W_LEN ("Permanent Redirect") /* RFC-ietf-httpbis-semantics, Section 15.4.9 */ }; static const struct _MHD_str_w_len four_hundred[] = { - /* 400 */ _MHD_S_STR_W_LEN ("Bad Request"), /* RFC7231, Section 6.5.1 */ - /* 401 */ _MHD_S_STR_W_LEN ("Unauthorized"), /* RFC7235, Section 3.1 */ - /* 402 */ _MHD_S_STR_W_LEN ("Payment Required"), /* RFC7231, Section 6.5.2 */ - /* 403 */ _MHD_S_STR_W_LEN ("Forbidden"), /* RFC7231, Section 6.5.3 */ - /* 404 */ _MHD_S_STR_W_LEN ("Not Found"), /* RFC7231, Section 6.5.4 */ - /* 405 */ _MHD_S_STR_W_LEN ("Method Not Allowed"), /* RFC7231, Section 6.5.5 */ - /* 406 */ _MHD_S_STR_W_LEN ("Not Acceptable"), /* RFC7231, Section 6.5.6 */ - /* 407 */ _MHD_S_STR_W_LEN ("Proxy Authentication Required"), /* RFC7235, Section 3.2 */ - /* 408 */ _MHD_S_STR_W_LEN ("Request Timeout"), /* RFC7231, Section 6.5.7 */ - /* 409 */ _MHD_S_STR_W_LEN ("Conflict"), /* RFC7231, Section 6.5.8 */ - /* 410 */ _MHD_S_STR_W_LEN ("Gone"), /* RFC7231, Section 6.5.9 */ - /* 411 */ _MHD_S_STR_W_LEN ("Length Required"), /* RFC7231, Section 6.5.10 */ - /* 412 */ _MHD_S_STR_W_LEN ("Precondition Failed"), /* RFC7232, Section 4.2; RFC8144, Section 3.2 */ - /* 413 */ _MHD_S_STR_W_LEN ("Payload Too Large"), /* RFC7231, Section 6.5.11 */ - /* 414 */ _MHD_S_STR_W_LEN ("URI Too Long"), /* RFC7231, Section 6.5.12 */ - /* 415 */ _MHD_S_STR_W_LEN ("Unsupported Media Type"), /* RFC7231, Section 6.5.13; RFC7694, Section 3 */ - /* 416 */ _MHD_S_STR_W_LEN ("Range Not Satisfiable"), /* RFC7233, Section 4.4 */ - /* 417 */ _MHD_S_STR_W_LEN ("Expectation Failed"), /* RFC7231, Section 6.5.14 */ + /* 400 */ _MHD_S_STR_W_LEN ("Bad Request"), /* RFC-ietf-httpbis-semantics, Section 15.5.1 */ + /* 401 */ _MHD_S_STR_W_LEN ("Unauthorized"), /* RFC-ietf-httpbis-semantics, Section 15.5.2 */ + /* 402 */ _MHD_S_STR_W_LEN ("Payment Required"), /* RFC-ietf-httpbis-semantics, Section 15.5.3 */ + /* 403 */ _MHD_S_STR_W_LEN ("Forbidden"), /* RFC-ietf-httpbis-semantics, Section 15.5.4 */ + /* 404 */ _MHD_S_STR_W_LEN ("Not Found"), /* RFC-ietf-httpbis-semantics, Section 15.5.5 */ + /* 405 */ _MHD_S_STR_W_LEN ("Method Not Allowed"), /* RFC-ietf-httpbis-semantics, Section 15.5.6 */ + /* 406 */ _MHD_S_STR_W_LEN ("Not Acceptable"), /* RFC-ietf-httpbis-semantics, Section 15.5.7 */ + /* 407 */ _MHD_S_STR_W_LEN ("Proxy Authentication Required"), /* RFC-ietf-httpbis-semantics, Section 15.5.8 */ + /* 408 */ _MHD_S_STR_W_LEN ("Request Timeout"), /* RFC-ietf-httpbis-semantics, Section 15.5.9 */ + /* 409 */ _MHD_S_STR_W_LEN ("Conflict"), /* RFC-ietf-httpbis-semantics, Section 15.5.10 */ + /* 410 */ _MHD_S_STR_W_LEN ("Gone"), /* RFC-ietf-httpbis-semantics, Section 15.5.11 */ + /* 411 */ _MHD_S_STR_W_LEN ("Length Required"), /* RFC-ietf-httpbis-semantics, Section 15.5.12 */ + /* 412 */ _MHD_S_STR_W_LEN ("Precondition Failed"), /* RFC-ietf-httpbis-semantics, Section 15.5.13 */ + /* 413 */ _MHD_S_STR_W_LEN ("Content Too Large"), /* RFC-ietf-httpbis-semantics, Section 15.5.14 */ + /* 414 */ _MHD_S_STR_W_LEN ("URI Too Long"), /* RFC-ietf-httpbis-semantics, Section 15.5.15 */ + /* 415 */ _MHD_S_STR_W_LEN ("Unsupported Media Type"), /* RFC-ietf-httpbis-semantics, Section 15.5.16 */ + /* 416 */ _MHD_S_STR_W_LEN ("Range Not Satisfiable"), /* RFC-ietf-httpbis-semantics, Section 15.5.17 */ + /* 417 */ _MHD_S_STR_W_LEN ("Expectation Failed"), /* RFC-ietf-httpbis-semantics, Section 15.5.18 */ /* 418 */ {"Unknown", 0}, /* Not used */ /* 419 */ {"Unknown", 0}, /* Not used */ /* 420 */ {"Unknown", 0}, /* Not used */ - /* 421 */ _MHD_S_STR_W_LEN ("Misdirected Request"), /* RFC7540, Section 9.1.2 */ - /* 422 */ _MHD_S_STR_W_LEN ("Unprocessable Entity"), /* RFC4918 */ + /* 421 */ _MHD_S_STR_W_LEN ("Misdirected Request"), /* RFC-ietf-httpbis-semantics, Section 15.5.20 */ + /* 422 */ _MHD_S_STR_W_LEN ("Unprocessable Content"), /* RFC-ietf-httpbis-semantics, Section 15.5.21 */ /* 423 */ _MHD_S_STR_W_LEN ("Locked"), /* RFC4918 */ /* 424 */ _MHD_S_STR_W_LEN ("Failed Dependency"), /* RFC4918 */ /* 425 */ _MHD_S_STR_W_LEN ("Too Early"), /* RFC8470 */ - /* 426 */ _MHD_S_STR_W_LEN ("Upgrade Required"), /* RFC7231, Section 6.5.15 */ + /* 426 */ _MHD_S_STR_W_LEN ("Upgrade Required"), /* RFC-ietf-httpbis-semantics, Section 15.5.22 */ /* 427 */ {"Unknown", 0}, /* Not used */ /* 428 */ _MHD_S_STR_W_LEN ("Precondition Required"), /* RFC6585 */ /* 429 */ _MHD_S_STR_W_LEN ("Too Many Requests"), /* RFC6585 */ @@ -141,12 +141,12 @@ static const struct _MHD_str_w_len four_hundred[] = { }; static const struct _MHD_str_w_len five_hundred[] = { - /* 500 */ _MHD_S_STR_W_LEN ("Internal Server Error"), /* RFC7231, Section 6.6.1 */ - /* 501 */ _MHD_S_STR_W_LEN ("Not Implemented"), /* RFC7231, Section 6.6.2 */ - /* 502 */ _MHD_S_STR_W_LEN ("Bad Gateway"), /* RFC7231, Section 6.6.3 */ - /* 503 */ _MHD_S_STR_W_LEN ("Service Unavailable"), /* RFC7231, Section 6.6.4 */ - /* 504 */ _MHD_S_STR_W_LEN ("Gateway Timeout"), /* RFC7231, Section 6.6.5 */ - /* 505 */ _MHD_S_STR_W_LEN ("HTTP Version Not Supported"), /* RFC7231, Section 6.6.6 */ + /* 500 */ _MHD_S_STR_W_LEN ("Internal Server Error"), /* RFC-ietf-httpbis-semantics, Section 15.6.1 */ + /* 501 */ _MHD_S_STR_W_LEN ("Not Implemented"), /* RFC-ietf-httpbis-semantics, Section 15.6.2 */ + /* 502 */ _MHD_S_STR_W_LEN ("Bad Gateway"), /* RFC-ietf-httpbis-semantics, Section 15.6.3 */ + /* 503 */ _MHD_S_STR_W_LEN ("Service Unavailable"), /* RFC-ietf-httpbis-semantics, Section 15.6.4 */ + /* 504 */ _MHD_S_STR_W_LEN ("Gateway Timeout"), /* RFC-ietf-httpbis-semantics, Section 15.6.5 */ + /* 505 */ _MHD_S_STR_W_LEN ("HTTP Version Not Supported"), /* RFC-ietf-httpbis-semantics, Section 15.6.6 */ /* 506 */ _MHD_S_STR_W_LEN ("Variant Also Negotiates"), /* RFC2295 */ /* 507 */ _MHD_S_STR_W_LEN ("Insufficient Storage"), /* RFC4918 */ /* 508 */ _MHD_S_STR_W_LEN ("Loop Detected"), /* RFC5842 */