diff --git a/include/boost/beast/http/impl/status.ipp b/include/boost/beast/http/impl/status.ipp index 2a61acd5..eb2bbc89 100644 --- a/include/boost/beast/http/impl/status.ipp +++ b/include/boost/beast/http/impl/status.ipp @@ -26,6 +26,7 @@ int_to_status(unsigned v) case status::continue_: case status::switching_protocols: case status::processing: + case status::early_hints: BOOST_FALLTHROUGH; // 2xx @@ -75,13 +76,12 @@ int_to_status(unsigned v) case status::unprocessable_entity: case status::locked: case status::failed_dependency: + case status::too_early: case status::upgrade_required: case status::precondition_required: case status::too_many_requests: case status::request_header_fields_too_large: - case status::connection_closed_without_response: case status::unavailable_for_legal_reasons: - case status::client_closed_request: BOOST_FALLTHROUGH; // 5xx @@ -96,7 +96,6 @@ int_to_status(unsigned v) case status::loop_detected: case status::not_extended: case status::network_authentication_required: - case status::network_connect_timeout_error: return static_cast(v); default: @@ -136,6 +135,7 @@ obsolete_reason(status v) case status::continue_: return "Continue"; case status::switching_protocols: return "Switching Protocols"; case status::processing: return "Processing"; + case status::early_hints: return "Early Hints"; // 2xx case status::ok: return "OK"; @@ -182,13 +182,12 @@ obsolete_reason(status v) case status::unprocessable_entity: return "Unprocessable Entity"; case status::locked: return "Locked"; case status::failed_dependency: return "Failed Dependency"; + case status::too_early: return "Too Early"; case status::upgrade_required: return "Upgrade Required"; case status::precondition_required: return "Precondition Required"; case status::too_many_requests: return "Too Many Requests"; case status::request_header_fields_too_large: return "Request Header Fields Too Large"; - case status::connection_closed_without_response: return "Connection Closed Without Response"; case status::unavailable_for_legal_reasons: return "Unavailable For Legal Reasons"; - case status::client_closed_request: return "Client Closed Request"; // 5xx case status::internal_server_error: return "Internal Server Error"; case status::not_implemented: return "Not Implemented"; @@ -201,7 +200,6 @@ obsolete_reason(status v) case status::loop_detected: return "Loop Detected"; case status::not_extended: return "Not Extended"; case status::network_authentication_required: return "Network Authentication Required"; - case status::network_connect_timeout_error: return "Network Connect Timeout Error"; default: break; diff --git a/include/boost/beast/http/status.hpp b/include/boost/beast/http/status.hpp index 2e9b7da7..15b0b009 100644 --- a/include/boost/beast/http/status.hpp +++ b/include/boost/beast/http/status.hpp @@ -39,8 +39,8 @@ enum class status : unsigned code. */ switching_protocols = 101, - processing = 102, + early_hints = 103, ok = 200, created = 201, @@ -84,13 +84,12 @@ enum class status : unsigned unprocessable_entity = 422, locked = 423, failed_dependency = 424, + too_early = 425, upgrade_required = 426, precondition_required = 428, too_many_requests = 429, request_header_fields_too_large = 431, - connection_closed_without_response = 444, unavailable_for_legal_reasons = 451, - client_closed_request = 499, internal_server_error = 500, not_implemented = 501, @@ -102,8 +101,7 @@ enum class status : unsigned insufficient_storage = 507, loop_detected = 508, not_extended = 510, - network_authentication_required = 511, - network_connect_timeout_error = 599 + network_authentication_required = 511 }; /** Represents the class of a status-code. diff --git a/test/beast/http/status.cpp b/test/beast/http/status.cpp index ea220736..301e6f7a 100644 --- a/test/beast/http/status.cpp +++ b/test/beast/http/status.cpp @@ -32,6 +32,7 @@ public: check(status::continue_ ,100, status_class::informational); check(status::switching_protocols ,101, status_class::informational); check(status::processing ,102, status_class::informational); + check(status::early_hints ,103, status_class::informational); check(status::ok ,200, status_class::successful); check(status::created ,201, status_class::successful); @@ -75,13 +76,12 @@ public: check(status::unprocessable_entity ,422, status_class::client_error); check(status::locked ,423, status_class::client_error); check(status::failed_dependency ,424, status_class::client_error); + check(status::too_early ,425, status_class::client_error); check(status::upgrade_required ,426, status_class::client_error); check(status::precondition_required ,428, status_class::client_error); check(status::too_many_requests ,429, status_class::client_error); check(status::request_header_fields_too_large ,431, status_class::client_error); - check(status::connection_closed_without_response ,444, status_class::client_error); check(status::unavailable_for_legal_reasons ,451, status_class::client_error); - check(status::client_closed_request ,499, status_class::client_error); check(status::internal_server_error ,500, status_class::server_error); check(status::not_implemented ,501, status_class::server_error); @@ -94,7 +94,6 @@ public: check(status::loop_detected ,508, status_class::server_error); check(status::not_extended ,510, status_class::server_error); check(status::network_authentication_required ,511, status_class::server_error); - check(status::network_connect_timeout_error ,599, status_class::server_error); BEAST_EXPECT(to_status_class(1) == status_class::unknown); BEAST_EXPECT(to_status_class(status::unknown) == status_class::unknown); @@ -107,6 +106,7 @@ public: good(status::continue_); good(status::switching_protocols); good(status::processing); + good(status::early_hints); good(status::ok); good(status::created); good(status::accepted); @@ -147,6 +147,7 @@ public: good(status::unprocessable_entity); good(status::locked); good(status::failed_dependency); + good(status::too_early); good(status::upgrade_required); good(status::precondition_required); good(status::too_many_requests);