diff --git a/CMakeLists.txt b/CMakeLists.txt index de1175fd..fd07388c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.5.1) cmake_policy(SET CMP0069 NEW) -project(llhttp VERSION 8.1.2) +project(llhttp VERSION 6.1.1) include(GNUInstallDirs) set(CMAKE_C_STANDARD 99) diff --git a/README.md b/README.md index 6f109da6..05c2aa68 100644 --- a/README.md +++ b/README.md @@ -92,239 +92,6 @@ if (err == HPE_OK) { ``` For more information on API usage, please refer to [src/native/api.h](https://github.com/nodejs/llhttp/blob/main/src/native/api.h). -## API - -### llhttp_settings_t - -The settings object contains a list of callbacks that the parser will invoke. - -The following callbacks can return `0` (proceed normally), `-1` (error) or `HPE_PAUSED` (pause the parser): - -* `on_message_begin`: Invoked when a new request/response starts. -* `on_message_complete`: Invoked when a request/response has been completedly parsed. -* `on_url_complete`: Invoked after the URL has been parsed. -* `on_method_complete`: Invoked after the HTTP method has been parsed. -* `on_version_complete`: Invoked after the HTTP version has been parsed. -* `on_status_complete`: Invoked after the status code has been parsed. -* `on_header_field_complete`: Invoked after a header name has been parsed. -* `on_header_value_complete`: Invoked after a header value has been parsed. -* `on_chunk_header`: Invoked after a new chunk is started. The current chunk length is stored in `parser->content_length`. -* `on_chunk_extension_name_complete`: Invoked after a chunk extension name is started. -* `on_chunk_extension_value_complete`: Invoked after a chunk extension value is started. -* `on_chunk_complete`: Invoked after a new chunk is received. -* `on_reset`: Invoked after `on_message_complete` and before `on_message_begin` when a new message - is received on the same parser. This is not invoked for the first message of the parser. - -The following callbacks can return `0` (proceed normally), `-1` (error) or `HPE_USER` (error from the callback): - -* `on_url`: Invoked when another character of the URL is received. -* `on_status`: Invoked when another character of the status is received. -* `on_method`: Invoked when another character of the method is received. - When parser is created with `HTTP_BOTH` and the input is a response, this also invoked for the sequence `HTTP/` - of the first message. -* `on_version`: Invoked when another character of the version is received. -* `on_header_field`: Invoked when another character of a header name is received. -* `on_header_value`: Invoked when another character of a header value is received. -* `on_chunk_extension_name`: Invoked when another character of a chunk extension name is received. -* `on_chunk_extension_value`: Invoked when another character of a extension value is received. - -The callback `on_headers_complete`, invoked when headers are completed, can return: - -* `0`: Proceed normally. -* `1`: Assume that request/response has no body, and proceed to parsing the next message. -* `2`: Assume absence of body (as above) and make `llhttp_execute()` return `HPE_PAUSED_UPGRADE`. -* `-1`: Error -* `HPE_PAUSED`: Pause the parser. - -### `void llhttp_init(llhttp_t* parser, llhttp_type_t type, const llhttp_settings_t* settings)` - -Initialize the parser with specific type and user settings. - -### `uint8_t llhttp_get_type(llhttp_t* parser)` - -Returns the type of the parser. - -### `uint8_t llhttp_get_http_major(llhttp_t* parser)` - -Returns the major version of the HTTP protocol of the current request/response. - -### `uint8_t llhttp_get_http_minor(llhttp_t* parser)` - -Returns the minor version of the HTTP protocol of the current request/response. - -### `uint8_t llhttp_get_method(llhttp_t* parser)` - -Returns the method of the current request. - -### `int llhttp_get_status_code(llhttp_t* parser)` - -Returns the method of the current response. - -### `uint8_t llhttp_get_upgrade(llhttp_t* parser)` - -Returns `1` if request includes the `Connection: upgrade` header. - -### `void llhttp_reset(llhttp_t* parser)` - -Reset an already initialized parser back to the start state, preserving the -existing parser type, callback settings, user data, and lenient flags. - -### `void llhttp_settings_init(llhttp_settings_t* settings)` - -Initialize the settings object. - -### `llhttp_errno_t llhttp_execute(llhttp_t* parser, const char* data, size_t len)` - -Parse full or partial request/response, invoking user callbacks along the way. - -If any of `llhttp_data_cb` returns errno not equal to `HPE_OK` - the parsing interrupts, -and such errno is returned from `llhttp_execute()`. If `HPE_PAUSED` was used as a errno, -the execution can be resumed with `llhttp_resume()` call. - -In a special case of CONNECT/Upgrade request/response `HPE_PAUSED_UPGRADE` is returned -after fully parsing the request/response. If the user wishes to continue parsing, -they need to invoke `llhttp_resume_after_upgrade()`. - -**if this function ever returns a non-pause type error, it will continue to return -the same error upon each successive call up until `llhttp_init()` is called.** - -### `llhttp_errno_t llhttp_finish(llhttp_t* parser)` - -This method should be called when the other side has no further bytes to -send (e.g. shutdown of readable side of the TCP connection.) - -Requests without `Content-Length` and other messages might require treating -all incoming bytes as the part of the body, up to the last byte of the -connection. - -This method will invoke `on_message_complete()` callback if the -request was terminated safely. Otherwise a error code would be returned. - - -### `int llhttp_message_needs_eof(const llhttp_t* parser)` - -Returns `1` if the incoming message is parsed until the last byte, and has to be completed by calling `llhttp_finish()` on EOF. - -### `int llhttp_should_keep_alive(const llhttp_t* parser)` - -Returns `1` if there might be any other messages following the last that was -successfully parsed. - -### `void llhttp_pause(llhttp_t* parser)` - -Make further calls of `llhttp_execute()` return `HPE_PAUSED` and set -appropriate error reason. - -**Do not call this from user callbacks! User callbacks must return -`HPE_PAUSED` if pausing is required.** - -### `void llhttp_resume(llhttp_t* parser)` - -Might be called to resume the execution after the pause in user's callback. - -See `llhttp_execute()` above for details. - -**Call this only if `llhttp_execute()` returns `HPE_PAUSED`.** - -### `void llhttp_resume_after_upgrade(llhttp_t* parser)` - -Might be called to resume the execution after the pause in user's callback. -See `llhttp_execute()` above for details. - -**Call this only if `llhttp_execute()` returns `HPE_PAUSED_UPGRADE`** - -### `llhttp_errno_t llhttp_get_errno(const llhttp_t* parser)` - -Returns the latest error. - -### `const char* llhttp_get_error_reason(const llhttp_t* parser)` - -Returns the verbal explanation of the latest returned error. - -**User callback should set error reason when returning the error. See -`llhttp_set_error_reason()` for details.** - -### `void llhttp_set_error_reason(llhttp_t* parser, const char* reason)` - -Assign verbal description to the returned error. Must be called in user -callbacks right before returning the errno. - -**`HPE_USER` error code might be useful in user callbacks.** - -### `const char* llhttp_get_error_pos(const llhttp_t* parser)` - -Returns the pointer to the last parsed byte before the returned error. The -pointer is relative to the `data` argument of `llhttp_execute()`. - -**This method might be useful for counting the number of parsed bytes.** - -### `const char* llhttp_errno_name(llhttp_errno_t err)` - -Returns textual name of error code. - -### `const char* llhttp_method_name(llhttp_method_t method)` - -Returns textual name of HTTP method. - -### `const char* llhttp_status_name(llhttp_status_t status)` - -Returns textual name of HTTP status. - -### `void llhttp_set_lenient_headers(llhttp_t* parser, int enabled)` - -Enables/disables lenient header value parsing (disabled by default). -Lenient parsing disables header value token checks, extending llhttp's -protocol support to highly non-compliant clients/server. - -No `HPE_INVALID_HEADER_TOKEN` will be raised for incorrect header values when -lenient parsing is "on". - -**USE AT YOUR OWN RISK!** - -### `void llhttp_set_lenient_chunked_length(llhttp_t* parser, int enabled)` - -Enables/disables lenient handling of conflicting `Transfer-Encoding` and -`Content-Length` headers (disabled by default). - -Normally `llhttp` would error when `Transfer-Encoding` is present in -conjunction with `Content-Length`. - -This error is important to prevent HTTP request smuggling, but may be less desirable -for small number of cases involving legacy servers. - -**USE AT YOUR OWN RISK!** - -### `void llhttp_set_lenient_keep_alive(llhttp_t* parser, int enabled)` - -Enables/disables lenient handling of `Connection: close` and HTTP/1.0 -requests responses. - -Normally `llhttp` would error on (in strict mode) or discard (in loose mode) -the HTTP request/response after the request/response with `Connection: close` -and `Content-Length`. - -This is important to prevent cache poisoning attacks, -but might interact badly with outdated and insecure clients. - -With this flag the extra request/response will be parsed normally. - -**USE AT YOUR OWN RISK!** - -### `void llhttp_set_lenient_transfer_encoding(llhttp_t* parser, int enabled)` - -Enables/disables lenient handling of `Transfer-Encoding` header. - -Normally `llhttp` would error when a `Transfer-Encoding` has `chunked` value -and another value after it (either in a single header or in multiple -headers whose value are internally joined using `, `). - -This is mandated by the spec to reliably determine request body size and thus -avoid request smuggling. - -With this flag the extra value will be parsed normally. - -**USE AT YOUR OWN RISK!** - ## Build Instructions Make sure you have [Node.js](https://nodejs.org/), npm and npx installed. Then under project directory run: @@ -338,41 +105,23 @@ make ### Bindings to other languages -* Lua: [MunifTanjim/llhttp.lua][11] * Python: [pallas/pyllhttp][8] * Ruby: [metabahn/llhttp][9] * Rust: [JackLiar/rust-llhttp][10] ### Using with CMake -If you want to use this library in a CMake project as a shared library, you can use the snippet below. - -``` -FetchContent_Declare(llhttp - URL "https://github.com/nodejs/llhttp/archive/refs/tags/release/v8.1.0.tar.gz") - -FetchContent_MakeAvailable(llhttp) - -# Link with the llhttp_shared target -target_link_libraries(${EXAMPLE_PROJECT_NAME} ${PROJECT_LIBRARIES} llhttp_shared ${PROJECT_NAME}) -``` - -If you want to use this library in a CMake project as a static library, you can set some cache variables first. +If you want to use this library in a CMake project you can use the snippet below. ``` FetchContent_Declare(llhttp - URL "https://github.com/nodejs/llhttp/archive/refs/tags/release/v8.1.0.tar.gz") + URL "https://github.com/nodejs/llhttp/archive/refs/tags/v6.0.5.tar.gz") # Using version 6.0.5 -set(BUILD_SHARED_LIBS OFF CACHE INTERNAL "") -set(BUILD_STATIC_LIBS ON CACHE INTERNAL "") FetchContent_MakeAvailable(llhttp) -# Link with the llhttp_static target -target_link_libraries(${EXAMPLE_PROJECT_NAME} ${PROJECT_LIBRARIES} llhttp_static ${PROJECT_NAME}) +target_link_libraries(${EXAMPLE_PROJECT_NAME} ${PROJECT_LIBRARIES} llhttp ${PROJECT_NAME}) ``` -_Note that using the git repo directly (e.g., via a git repo url and tag) will not work with FetchContent_Declare because [CMakeLists.txt](./CMakeLists.txt) requires string replacements (e.g., `_RELEASE_`) before it will build._ - ## Building on Windows ### Installation @@ -431,4 +180,3 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. [8]: https://github.com/pallas/pyllhttp [9]: https://github.com/metabahn/llhttp [10]: https://github.com/JackLiar/rust-llhttp -[11]: https://github.com/MunifTanjim/llhttp.lua diff --git a/include/llhttp.h b/include/llhttp.h index 618b733e..29979b4f 100644 --- a/include/llhttp.h +++ b/include/llhttp.h @@ -1,9 +1,9 @@ #ifndef INCLUDE_LLHTTP_H_ #define INCLUDE_LLHTTP_H_ -#define LLHTTP_VERSION_MAJOR 8 +#define LLHTTP_VERSION_MAJOR 6 #define LLHTTP_VERSION_MINOR 1 -#define LLHTTP_VERSION_PATCH 2 +#define LLHTTP_VERSION_PATCH 1 #ifndef LLHTTP_STRICT_MODE # define LLHTTP_STRICT_MODE 0 @@ -38,7 +38,6 @@ struct llhttp__internal_s { uint8_t finish; uint16_t flags; uint16_t status_code; - uint8_t initial_message_completed; void* settings; }; @@ -63,7 +62,6 @@ enum llhttp_errno { HPE_CR_EXPECTED = 25, HPE_LF_EXPECTED = 3, HPE_UNEXPECTED_CONTENT_LENGTH = 4, - HPE_UNEXPECTED_SPACE = 30, HPE_CLOSED_CONNECTION = 5, HPE_INVALID_METHOD = 6, HPE_INVALID_URL = 7, @@ -83,16 +81,7 @@ enum llhttp_errno { HPE_PAUSED = 21, HPE_PAUSED_UPGRADE = 22, HPE_PAUSED_H2_UPGRADE = 23, - HPE_USER = 24, - HPE_CB_URL_COMPLETE = 26, - HPE_CB_STATUS_COMPLETE = 27, - HPE_CB_METHOD_COMPLETE = 32, - HPE_CB_VERSION_COMPLETE = 33, - HPE_CB_HEADER_FIELD_COMPLETE = 28, - HPE_CB_HEADER_VALUE_COMPLETE = 29, - HPE_CB_CHUNK_EXTENSION_NAME_COMPLETE = 34, - HPE_CB_CHUNK_EXTENSION_VALUE_COMPLETE = 35, - HPE_CB_RESET = 31 + HPE_USER = 24 }; typedef enum llhttp_errno llhttp_errno_t; @@ -182,109 +171,6 @@ enum llhttp_method { }; typedef enum llhttp_method llhttp_method_t; -enum llhttp_status { - HTTP_STATUS_CONTINUE = 100, - HTTP_STATUS_SWITCHING_PROTOCOLS = 101, - HTTP_STATUS_PROCESSING = 102, - HTTP_STATUS_EARLY_HINTS = 103, - HTTP_STATUS_RESPONSE_IS_STALE = 110, - HTTP_STATUS_REVALIDATION_FAILED = 111, - HTTP_STATUS_DISCONNECTED_OPERATION = 112, - HTTP_STATUS_HEURISTIC_EXPIRATION = 113, - HTTP_STATUS_MISCELLANEOUS_WARNING = 199, - HTTP_STATUS_OK = 200, - HTTP_STATUS_CREATED = 201, - HTTP_STATUS_ACCEPTED = 202, - HTTP_STATUS_NON_AUTHORITATIVE_INFORMATION = 203, - HTTP_STATUS_NO_CONTENT = 204, - HTTP_STATUS_RESET_CONTENT = 205, - HTTP_STATUS_PARTIAL_CONTENT = 206, - HTTP_STATUS_MULTI_STATUS = 207, - HTTP_STATUS_ALREADY_REPORTED = 208, - HTTP_STATUS_TRANSFORMATION_APPLIED = 214, - HTTP_STATUS_IM_USED = 226, - HTTP_STATUS_MISCELLANEOUS_PERSISTENT_WARNING = 299, - HTTP_STATUS_MULTIPLE_CHOICES = 300, - HTTP_STATUS_MOVED_PERMANENTLY = 301, - HTTP_STATUS_FOUND = 302, - HTTP_STATUS_SEE_OTHER = 303, - HTTP_STATUS_NOT_MODIFIED = 304, - HTTP_STATUS_USE_PROXY = 305, - HTTP_STATUS_SWITCH_PROXY = 306, - HTTP_STATUS_TEMPORARY_REDIRECT = 307, - HTTP_STATUS_PERMANENT_REDIRECT = 308, - HTTP_STATUS_BAD_REQUEST = 400, - HTTP_STATUS_UNAUTHORIZED = 401, - HTTP_STATUS_PAYMENT_REQUIRED = 402, - HTTP_STATUS_FORBIDDEN = 403, - HTTP_STATUS_NOT_FOUND = 404, - HTTP_STATUS_METHOD_NOT_ALLOWED = 405, - HTTP_STATUS_NOT_ACCEPTABLE = 406, - HTTP_STATUS_PROXY_AUTHENTICATION_REQUIRED = 407, - HTTP_STATUS_REQUEST_TIMEOUT = 408, - HTTP_STATUS_CONFLICT = 409, - HTTP_STATUS_GONE = 410, - HTTP_STATUS_LENGTH_REQUIRED = 411, - HTTP_STATUS_PRECONDITION_FAILED = 412, - HTTP_STATUS_PAYLOAD_TOO_LARGE = 413, - HTTP_STATUS_URI_TOO_LONG = 414, - HTTP_STATUS_UNSUPPORTED_MEDIA_TYPE = 415, - HTTP_STATUS_RANGE_NOT_SATISFIABLE = 416, - HTTP_STATUS_EXPECTATION_FAILED = 417, - HTTP_STATUS_IM_A_TEAPOT = 418, - HTTP_STATUS_PAGE_EXPIRED = 419, - HTTP_STATUS_ENHANCE_YOUR_CALM = 420, - HTTP_STATUS_MISDIRECTED_REQUEST = 421, - HTTP_STATUS_UNPROCESSABLE_ENTITY = 422, - HTTP_STATUS_LOCKED = 423, - HTTP_STATUS_FAILED_DEPENDENCY = 424, - HTTP_STATUS_TOO_EARLY = 425, - HTTP_STATUS_UPGRADE_REQUIRED = 426, - HTTP_STATUS_PRECONDITION_REQUIRED = 428, - HTTP_STATUS_TOO_MANY_REQUESTS = 429, - HTTP_STATUS_REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL = 430, - HTTP_STATUS_REQUEST_HEADER_FIELDS_TOO_LARGE = 431, - HTTP_STATUS_LOGIN_TIMEOUT = 440, - HTTP_STATUS_NO_RESPONSE = 444, - HTTP_STATUS_RETRY_WITH = 449, - HTTP_STATUS_BLOCKED_BY_PARENTAL_CONTROL = 450, - HTTP_STATUS_UNAVAILABLE_FOR_LEGAL_REASONS = 451, - HTTP_STATUS_CLIENT_CLOSED_LOAD_BALANCED_REQUEST = 460, - HTTP_STATUS_INVALID_X_FORWARDED_FOR = 463, - HTTP_STATUS_REQUEST_HEADER_TOO_LARGE = 494, - HTTP_STATUS_SSL_CERTIFICATE_ERROR = 495, - HTTP_STATUS_SSL_CERTIFICATE_REQUIRED = 496, - HTTP_STATUS_HTTP_REQUEST_SENT_TO_HTTPS_PORT = 497, - HTTP_STATUS_INVALID_TOKEN = 498, - HTTP_STATUS_CLIENT_CLOSED_REQUEST = 499, - HTTP_STATUS_INTERNAL_SERVER_ERROR = 500, - HTTP_STATUS_NOT_IMPLEMENTED = 501, - HTTP_STATUS_BAD_GATEWAY = 502, - HTTP_STATUS_SERVICE_UNAVAILABLE = 503, - HTTP_STATUS_GATEWAY_TIMEOUT = 504, - HTTP_STATUS_HTTP_VERSION_NOT_SUPPORTED = 505, - HTTP_STATUS_VARIANT_ALSO_NEGOTIATES = 506, - HTTP_STATUS_INSUFFICIENT_STORAGE = 507, - HTTP_STATUS_LOOP_DETECTED = 508, - HTTP_STATUS_BANDWIDTH_LIMIT_EXCEEDED = 509, - HTTP_STATUS_NOT_EXTENDED = 510, - HTTP_STATUS_NETWORK_AUTHENTICATION_REQUIRED = 511, - HTTP_STATUS_WEB_SERVER_UNKNOWN_ERROR = 520, - HTTP_STATUS_WEB_SERVER_IS_DOWN = 521, - HTTP_STATUS_CONNECTION_TIMEOUT = 522, - HTTP_STATUS_ORIGIN_IS_UNREACHABLE = 523, - HTTP_STATUS_TIMEOUT_OCCURED = 524, - HTTP_STATUS_SSL_HANDSHAKE_FAILED = 525, - HTTP_STATUS_INVALID_SSL_CERTIFICATE = 526, - HTTP_STATUS_RAILGUN_ERROR = 527, - HTTP_STATUS_SITE_IS_OVERLOADED = 529, - HTTP_STATUS_SITE_IS_FROZEN = 530, - HTTP_STATUS_IDENTITY_PROVIDER_AUTHENTICATION_ERROR = 561, - HTTP_STATUS_NETWORK_READ_TIMEOUT = 598, - HTTP_STATUS_NETWORK_CONNECT_TIMEOUT = 599 -}; -typedef enum llhttp_status llhttp_status_t; - #define HTTP_ERRNO_MAP(XX) \ XX(0, OK, OK) \ XX(1, INTERNAL, INTERNAL) \ @@ -292,7 +178,6 @@ typedef enum llhttp_status llhttp_status_t; XX(25, CR_EXPECTED, CR_EXPECTED) \ XX(3, LF_EXPECTED, LF_EXPECTED) \ XX(4, UNEXPECTED_CONTENT_LENGTH, UNEXPECTED_CONTENT_LENGTH) \ - XX(30, UNEXPECTED_SPACE, UNEXPECTED_SPACE) \ XX(5, CLOSED_CONNECTION, CLOSED_CONNECTION) \ XX(6, INVALID_METHOD, INVALID_METHOD) \ XX(7, INVALID_URL, INVALID_URL) \ @@ -313,15 +198,6 @@ typedef enum llhttp_status llhttp_status_t; XX(22, PAUSED_UPGRADE, PAUSED_UPGRADE) \ XX(23, PAUSED_H2_UPGRADE, PAUSED_H2_UPGRADE) \ XX(24, USER, USER) \ - XX(26, CB_URL_COMPLETE, CB_URL_COMPLETE) \ - XX(27, CB_STATUS_COMPLETE, CB_STATUS_COMPLETE) \ - XX(32, CB_METHOD_COMPLETE, CB_METHOD_COMPLETE) \ - XX(33, CB_VERSION_COMPLETE, CB_VERSION_COMPLETE) \ - XX(28, CB_HEADER_FIELD_COMPLETE, CB_HEADER_FIELD_COMPLETE) \ - XX(29, CB_HEADER_VALUE_COMPLETE, CB_HEADER_VALUE_COMPLETE) \ - XX(34, CB_CHUNK_EXTENSION_NAME_COMPLETE, CB_CHUNK_EXTENSION_NAME_COMPLETE) \ - XX(35, CB_CHUNK_EXTENSION_VALUE_COMPLETE, CB_CHUNK_EXTENSION_VALUE_COMPLETE) \ - XX(31, CB_RESET, CB_RESET) \ #define HTTP_METHOD_MAP(XX) \ @@ -427,108 +303,6 @@ typedef enum llhttp_status llhttp_status_t; XX(45, FLUSH, FLUSH) \ -#define HTTP_STATUS_MAP(XX) \ - XX(100, CONTINUE, CONTINUE) \ - XX(101, SWITCHING_PROTOCOLS, SWITCHING_PROTOCOLS) \ - XX(102, PROCESSING, PROCESSING) \ - XX(103, EARLY_HINTS, EARLY_HINTS) \ - XX(110, RESPONSE_IS_STALE, RESPONSE_IS_STALE) \ - XX(111, REVALIDATION_FAILED, REVALIDATION_FAILED) \ - XX(112, DISCONNECTED_OPERATION, DISCONNECTED_OPERATION) \ - XX(113, HEURISTIC_EXPIRATION, HEURISTIC_EXPIRATION) \ - XX(199, MISCELLANEOUS_WARNING, MISCELLANEOUS_WARNING) \ - XX(200, OK, OK) \ - XX(201, CREATED, CREATED) \ - XX(202, ACCEPTED, ACCEPTED) \ - XX(203, NON_AUTHORITATIVE_INFORMATION, NON_AUTHORITATIVE_INFORMATION) \ - XX(204, NO_CONTENT, NO_CONTENT) \ - XX(205, RESET_CONTENT, RESET_CONTENT) \ - XX(206, PARTIAL_CONTENT, PARTIAL_CONTENT) \ - XX(207, MULTI_STATUS, MULTI_STATUS) \ - XX(208, ALREADY_REPORTED, ALREADY_REPORTED) \ - XX(214, TRANSFORMATION_APPLIED, TRANSFORMATION_APPLIED) \ - XX(226, IM_USED, IM_USED) \ - XX(299, MISCELLANEOUS_PERSISTENT_WARNING, MISCELLANEOUS_PERSISTENT_WARNING) \ - XX(300, MULTIPLE_CHOICES, MULTIPLE_CHOICES) \ - XX(301, MOVED_PERMANENTLY, MOVED_PERMANENTLY) \ - XX(302, FOUND, FOUND) \ - XX(303, SEE_OTHER, SEE_OTHER) \ - XX(304, NOT_MODIFIED, NOT_MODIFIED) \ - XX(305, USE_PROXY, USE_PROXY) \ - XX(306, SWITCH_PROXY, SWITCH_PROXY) \ - XX(307, TEMPORARY_REDIRECT, TEMPORARY_REDIRECT) \ - XX(308, PERMANENT_REDIRECT, PERMANENT_REDIRECT) \ - XX(400, BAD_REQUEST, BAD_REQUEST) \ - XX(401, UNAUTHORIZED, UNAUTHORIZED) \ - XX(402, PAYMENT_REQUIRED, PAYMENT_REQUIRED) \ - XX(403, FORBIDDEN, FORBIDDEN) \ - XX(404, NOT_FOUND, NOT_FOUND) \ - XX(405, METHOD_NOT_ALLOWED, METHOD_NOT_ALLOWED) \ - XX(406, NOT_ACCEPTABLE, NOT_ACCEPTABLE) \ - XX(407, PROXY_AUTHENTICATION_REQUIRED, PROXY_AUTHENTICATION_REQUIRED) \ - XX(408, REQUEST_TIMEOUT, REQUEST_TIMEOUT) \ - XX(409, CONFLICT, CONFLICT) \ - XX(410, GONE, GONE) \ - XX(411, LENGTH_REQUIRED, LENGTH_REQUIRED) \ - XX(412, PRECONDITION_FAILED, PRECONDITION_FAILED) \ - XX(413, PAYLOAD_TOO_LARGE, PAYLOAD_TOO_LARGE) \ - XX(414, URI_TOO_LONG, URI_TOO_LONG) \ - XX(415, UNSUPPORTED_MEDIA_TYPE, UNSUPPORTED_MEDIA_TYPE) \ - XX(416, RANGE_NOT_SATISFIABLE, RANGE_NOT_SATISFIABLE) \ - XX(417, EXPECTATION_FAILED, EXPECTATION_FAILED) \ - XX(418, IM_A_TEAPOT, IM_A_TEAPOT) \ - XX(419, PAGE_EXPIRED, PAGE_EXPIRED) \ - XX(420, ENHANCE_YOUR_CALM, ENHANCE_YOUR_CALM) \ - XX(421, MISDIRECTED_REQUEST, MISDIRECTED_REQUEST) \ - XX(422, UNPROCESSABLE_ENTITY, UNPROCESSABLE_ENTITY) \ - XX(423, LOCKED, LOCKED) \ - XX(424, FAILED_DEPENDENCY, FAILED_DEPENDENCY) \ - XX(425, TOO_EARLY, TOO_EARLY) \ - XX(426, UPGRADE_REQUIRED, UPGRADE_REQUIRED) \ - XX(428, PRECONDITION_REQUIRED, PRECONDITION_REQUIRED) \ - XX(429, TOO_MANY_REQUESTS, TOO_MANY_REQUESTS) \ - XX(430, REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL, REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL) \ - XX(431, REQUEST_HEADER_FIELDS_TOO_LARGE, REQUEST_HEADER_FIELDS_TOO_LARGE) \ - XX(440, LOGIN_TIMEOUT, LOGIN_TIMEOUT) \ - XX(444, NO_RESPONSE, NO_RESPONSE) \ - XX(449, RETRY_WITH, RETRY_WITH) \ - XX(450, BLOCKED_BY_PARENTAL_CONTROL, BLOCKED_BY_PARENTAL_CONTROL) \ - XX(451, UNAVAILABLE_FOR_LEGAL_REASONS, UNAVAILABLE_FOR_LEGAL_REASONS) \ - XX(460, CLIENT_CLOSED_LOAD_BALANCED_REQUEST, CLIENT_CLOSED_LOAD_BALANCED_REQUEST) \ - XX(463, INVALID_X_FORWARDED_FOR, INVALID_X_FORWARDED_FOR) \ - XX(494, REQUEST_HEADER_TOO_LARGE, REQUEST_HEADER_TOO_LARGE) \ - XX(495, SSL_CERTIFICATE_ERROR, SSL_CERTIFICATE_ERROR) \ - XX(496, SSL_CERTIFICATE_REQUIRED, SSL_CERTIFICATE_REQUIRED) \ - XX(497, HTTP_REQUEST_SENT_TO_HTTPS_PORT, HTTP_REQUEST_SENT_TO_HTTPS_PORT) \ - XX(498, INVALID_TOKEN, INVALID_TOKEN) \ - XX(499, CLIENT_CLOSED_REQUEST, CLIENT_CLOSED_REQUEST) \ - XX(500, INTERNAL_SERVER_ERROR, INTERNAL_SERVER_ERROR) \ - XX(501, NOT_IMPLEMENTED, NOT_IMPLEMENTED) \ - XX(502, BAD_GATEWAY, BAD_GATEWAY) \ - XX(503, SERVICE_UNAVAILABLE, SERVICE_UNAVAILABLE) \ - XX(504, GATEWAY_TIMEOUT, GATEWAY_TIMEOUT) \ - XX(505, HTTP_VERSION_NOT_SUPPORTED, HTTP_VERSION_NOT_SUPPORTED) \ - XX(506, VARIANT_ALSO_NEGOTIATES, VARIANT_ALSO_NEGOTIATES) \ - XX(507, INSUFFICIENT_STORAGE, INSUFFICIENT_STORAGE) \ - XX(508, LOOP_DETECTED, LOOP_DETECTED) \ - XX(509, BANDWIDTH_LIMIT_EXCEEDED, BANDWIDTH_LIMIT_EXCEEDED) \ - XX(510, NOT_EXTENDED, NOT_EXTENDED) \ - XX(511, NETWORK_AUTHENTICATION_REQUIRED, NETWORK_AUTHENTICATION_REQUIRED) \ - XX(520, WEB_SERVER_UNKNOWN_ERROR, WEB_SERVER_UNKNOWN_ERROR) \ - XX(521, WEB_SERVER_IS_DOWN, WEB_SERVER_IS_DOWN) \ - XX(522, CONNECTION_TIMEOUT, CONNECTION_TIMEOUT) \ - XX(523, ORIGIN_IS_UNREACHABLE, ORIGIN_IS_UNREACHABLE) \ - XX(524, TIMEOUT_OCCURED, TIMEOUT_OCCURED) \ - XX(525, SSL_HANDSHAKE_FAILED, SSL_HANDSHAKE_FAILED) \ - XX(526, INVALID_SSL_CERTIFICATE, INVALID_SSL_CERTIFICATE) \ - XX(527, RAILGUN_ERROR, RAILGUN_ERROR) \ - XX(529, SITE_IS_OVERLOADED, SITE_IS_OVERLOADED) \ - XX(530, SITE_IS_FROZEN, SITE_IS_FROZEN) \ - XX(561, IDENTITY_PROVIDER_AUTHENTICATION_ERROR, IDENTITY_PROVIDER_AUTHENTICATION_ERROR) \ - XX(598, NETWORK_READ_TIMEOUT, NETWORK_READ_TIMEOUT) \ - XX(599, NETWORK_CONNECT_TIMEOUT, NETWORK_CONNECT_TIMEOUT) \ - - #ifdef __cplusplus } /* extern "C" */ #endif @@ -560,12 +334,8 @@ struct llhttp_settings_s { /* Possible return values 0, -1, HPE_USER */ llhttp_data_cb on_url; llhttp_data_cb on_status; - llhttp_data_cb on_method; - llhttp_data_cb on_version; llhttp_data_cb on_header_field; llhttp_data_cb on_header_value; - llhttp_data_cb on_chunk_extension_name; - llhttp_data_cb on_chunk_extension_value; /* Possible return values: * 0 - Proceed normally @@ -578,19 +348,14 @@ struct llhttp_settings_s { */ llhttp_cb on_headers_complete; + /* Possible return values 0, -1, HPE_USER */ + llhttp_data_cb on_chunk_parameters; + /* Possible return values 0, -1, HPE_USER */ llhttp_data_cb on_body; /* Possible return values 0, -1, `HPE_PAUSED` */ llhttp_cb on_message_complete; - llhttp_cb on_url_complete; - llhttp_cb on_status_complete; - llhttp_cb on_method_complete; - llhttp_cb on_version_complete; - llhttp_cb on_header_field_complete; - llhttp_cb on_header_value_complete; - llhttp_cb on_chunk_extension_name_complete; - llhttp_cb on_chunk_extension_value_complete; /* When on_chunk_header is called, the current chunk length is stored * in parser->content_length. @@ -598,7 +363,12 @@ struct llhttp_settings_s { */ llhttp_cb on_chunk_header; llhttp_cb on_chunk_complete; - llhttp_cb on_reset; + + /* Information-only callbacks, return value is ignored */ + llhttp_cb on_url_complete; + llhttp_cb on_status_complete; + llhttp_cb on_header_field_complete; + llhttp_cb on_header_value_complete; }; /* Initialize the parser with specific type and user settings. @@ -748,9 +518,6 @@ const char* llhttp_errno_name(llhttp_errno_t err); LLHTTP_EXPORT const char* llhttp_method_name(llhttp_method_t method); -/* Returns textual name of HTTP status */ -LLHTTP_EXPORT -const char* llhttp_status_name(llhttp_status_t status); /* Enables/disables lenient header value parsing (disabled by default). * @@ -790,7 +557,6 @@ void llhttp_set_lenient_chunked_length(llhttp_t* parser, int enabled); * * **(USE AT YOUR OWN RISK)** */ -LLHTTP_EXPORT void llhttp_set_lenient_keep_alive(llhttp_t* parser, int enabled); /* Enables/disables lenient handling of `Transfer-Encoding` header. @@ -804,7 +570,6 @@ void llhttp_set_lenient_keep_alive(llhttp_t* parser, int enabled); * * **(USE AT YOUR OWN RISK)** */ -LLHTTP_EXPORT void llhttp_set_lenient_transfer_encoding(llhttp_t* parser, int enabled); #ifdef __cplusplus diff --git a/src/api.c b/src/api.c index 4b687a5d..d3065b36 100644 --- a/src/api.c +++ b/src/api.c @@ -60,26 +60,13 @@ const llhttp_settings_t wasm_settings = { wasm_on_message_begin, wasm_on_url, wasm_on_status, - NULL, - NULL, wasm_on_header_field, wasm_on_header_value, - NULL, - NULL, wasm_on_headers_complete_wrap, wasm_on_body, wasm_on_message_complete, NULL, NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, }; @@ -93,8 +80,6 @@ void llhttp_free(llhttp_t* parser) { free(parser); } -#endif // defined(__wasm__) - /* Some getters required to get stuff from the parser */ uint8_t llhttp_get_type(llhttp_t* parser) { @@ -121,6 +106,8 @@ uint8_t llhttp_get_upgrade(llhttp_t* parser) { return parser->upgrade; } +#endif // defined(__wasm__) + void llhttp_reset(llhttp_t* parser) { llhttp_type_t type = parser->type; @@ -239,15 +226,6 @@ const char* llhttp_method_name(llhttp_method_t method) { #undef HTTP_METHOD_GEN } -const char* llhttp_status_name(llhttp_status_t status) { -#define HTTP_STATUS_GEN(NUM, NAME, STRING) case HTTP_STATUS_##NAME: return #STRING; - switch (status) { - HTTP_STATUS_MAP(HTTP_STATUS_GEN) - default: abort(); - } -#undef HTTP_STATUS_GEN -} - void llhttp_set_lenient_headers(llhttp_t* parser, int enabled) { if (enabled) { @@ -321,34 +299,6 @@ int llhttp__on_status_complete(llhttp_t* s, const char* p, const char* endp) { } -int llhttp__on_method(llhttp_t* s, const char* p, const char* endp) { - int err; - SPAN_CALLBACK_MAYBE(s, on_method, p, endp - p); - return err; -} - - -int llhttp__on_method_complete(llhttp_t* s, const char* p, const char* endp) { - int err; - CALLBACK_MAYBE(s, on_method_complete); - return err; -} - - -int llhttp__on_version(llhttp_t* s, const char* p, const char* endp) { - int err; - SPAN_CALLBACK_MAYBE(s, on_version, p, endp - p); - return err; -} - - -int llhttp__on_version_complete(llhttp_t* s, const char* p, const char* endp) { - int err; - CALLBACK_MAYBE(s, on_version_complete); - return err; -} - - int llhttp__on_header_field(llhttp_t* s, const char* p, const char* endp) { int err; SPAN_CALLBACK_MAYBE(s, on_header_field, p, endp - p); @@ -405,30 +355,9 @@ int llhttp__on_chunk_header(llhttp_t* s, const char* p, const char* endp) { } -int llhttp__on_chunk_extension_name(llhttp_t* s, const char* p, const char* endp) { - int err; - SPAN_CALLBACK_MAYBE(s, on_chunk_extension_name, p, endp - p); - return err; -} - - -int llhttp__on_chunk_extension_name_complete(llhttp_t* s, const char* p, const char* endp) { +int llhttp__on_chunk_parameters(llhttp_t* s, const char* p, const char* endp) { int err; - CALLBACK_MAYBE(s, on_chunk_extension_name_complete); - return err; -} - - -int llhttp__on_chunk_extension_value(llhttp_t* s, const char* p, const char* endp) { - int err; - SPAN_CALLBACK_MAYBE(s, on_chunk_extension_value, p, endp - p); - return err; -} - - -int llhttp__on_chunk_extension_value_complete(llhttp_t* s, const char* p, const char* endp) { - int err; - CALLBACK_MAYBE(s, on_chunk_extension_value_complete); + SPAN_CALLBACK_MAYBE(s, on_chunk_parameters, p, endp - p); return err; } @@ -440,13 +369,6 @@ int llhttp__on_chunk_complete(llhttp_t* s, const char* p, const char* endp) { } -int llhttp__on_reset(llhttp_t* s, const char* p, const char* endp) { - int err; - CALLBACK_MAYBE(s, on_reset); - return err; -} - - /* Private */ diff --git a/src/llhttp.c b/src/llhttp.c index a59824eb..6f1e1532 100644 --- a/src/llhttp.c +++ b/src/llhttp.c @@ -339,25 +339,13 @@ enum llparse_state_e { s_n_llhttp__internal__n_span_start_llhttp__on_body, s_n_llhttp__internal__n_invoke_is_equal_content_length, s_n_llhttp__internal__n_chunk_size_almost_done, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete, - s_n_llhttp__internal__n_chunk_extension_quoted_value_done, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1, - s_n_llhttp__internal__n_error_21, - s_n_llhttp__internal__n_chunk_extension_quoted_value, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2, - s_n_llhttp__internal__n_error_23, - s_n_llhttp__internal__n_chunk_extension_value, - s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value, - s_n_llhttp__internal__n_error_24, - s_n_llhttp__internal__n_chunk_extension_name, - s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name, - s_n_llhttp__internal__n_chunk_extensions, + s_n_llhttp__internal__n_chunk_parameters, + s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters, + s_n_llhttp__internal__n_chunk_parameters_ows, s_n_llhttp__internal__n_chunk_size_otherwise, s_n_llhttp__internal__n_chunk_size, s_n_llhttp__internal__n_chunk_size_digit, - s_n_llhttp__internal__n_invoke_update_content_length_1, + s_n_llhttp__internal__n_invoke_update_content_length, s_n_llhttp__internal__n_consume_content_length_1, s_n_llhttp__internal__n_span_start_llhttp__on_body_1, s_n_llhttp__internal__n_eof, @@ -365,7 +353,7 @@ enum llparse_state_e { s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete, s_n_llhttp__internal__n_headers_almost_done, s_n_llhttp__internal__n_header_field_colon_discard_ws, - s_n_llhttp__internal__n_error_33, + s_n_llhttp__internal__n_error_19, s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete, s_n_llhttp__internal__n_span_start_llhttp__on_header_value, s_n_llhttp__internal__n_header_value_discard_lws, @@ -373,7 +361,7 @@ enum llparse_state_e { s_n_llhttp__internal__n_header_value_lws, s_n_llhttp__internal__n_header_value_almost_done, s_n_llhttp__internal__n_header_value_lenient, - s_n_llhttp__internal__n_error_42, + s_n_llhttp__internal__n_error_26, s_n_llhttp__internal__n_header_value_otherwise, s_n_llhttp__internal__n_header_value_connection_token, s_n_llhttp__internal__n_header_value_connection_ws, @@ -381,12 +369,12 @@ enum llparse_state_e { s_n_llhttp__internal__n_header_value_connection_2, s_n_llhttp__internal__n_header_value_connection_3, s_n_llhttp__internal__n_header_value_connection, - s_n_llhttp__internal__n_error_44, - s_n_llhttp__internal__n_error_45, + s_n_llhttp__internal__n_error_28, + s_n_llhttp__internal__n_error_29, s_n_llhttp__internal__n_header_value_content_length_ws, s_n_llhttp__internal__n_header_value_content_length, - s_n_llhttp__internal__n_error_47, - s_n_llhttp__internal__n_error_46, + s_n_llhttp__internal__n_error_31, + s_n_llhttp__internal__n_error_30, s_n_llhttp__internal__n_header_value_te_token_ows, s_n_llhttp__internal__n_header_value, s_n_llhttp__internal__n_header_value_te_token, @@ -408,7 +396,6 @@ enum llparse_state_e { s_n_llhttp__internal__n_header_field, s_n_llhttp__internal__n_span_start_llhttp__on_header_field, s_n_llhttp__internal__n_header_field_start, - s_n_llhttp__internal__n_headers_start, s_n_llhttp__internal__n_url_to_http_09, s_n_llhttp__internal__n_url_skip_to_http09, s_n_llhttp__internal__n_url_skip_lf_to_http09_1, @@ -416,16 +403,9 @@ enum llparse_state_e { s_n_llhttp__internal__n_req_pri_upgrade, s_n_llhttp__internal__n_req_http_complete_1, s_n_llhttp__internal__n_req_http_complete, - s_n_llhttp__internal__n_invoke_load_method_1, - s_n_llhttp__internal__n_invoke_llhttp__on_version_complete, - s_n_llhttp__internal__n_error_52, - s_n_llhttp__internal__n_error_57, s_n_llhttp__internal__n_req_http_minor, - s_n_llhttp__internal__n_error_58, s_n_llhttp__internal__n_req_http_dot, - s_n_llhttp__internal__n_error_59, s_n_llhttp__internal__n_req_http_major, - s_n_llhttp__internal__n_span_start_llhttp__on_version, s_n_llhttp__internal__n_req_http_start_1, s_n_llhttp__internal__n_req_http_start_2, s_n_llhttp__internal__n_req_http_start_3, @@ -453,124 +433,102 @@ enum llparse_state_e { s_n_llhttp__internal__n_url_entry_connect, s_n_llhttp__internal__n_req_spaces_before_url, s_n_llhttp__internal__n_req_first_space_before_url, - s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1, - s_n_llhttp__internal__n_after_start_req_2, - s_n_llhttp__internal__n_after_start_req_3, - s_n_llhttp__internal__n_after_start_req_1, - s_n_llhttp__internal__n_after_start_req_4, - s_n_llhttp__internal__n_after_start_req_6, - s_n_llhttp__internal__n_after_start_req_8, - s_n_llhttp__internal__n_after_start_req_9, - s_n_llhttp__internal__n_after_start_req_7, - s_n_llhttp__internal__n_after_start_req_5, - s_n_llhttp__internal__n_after_start_req_12, - s_n_llhttp__internal__n_after_start_req_13, - s_n_llhttp__internal__n_after_start_req_11, - s_n_llhttp__internal__n_after_start_req_10, - s_n_llhttp__internal__n_after_start_req_14, - s_n_llhttp__internal__n_after_start_req_17, - s_n_llhttp__internal__n_after_start_req_16, - s_n_llhttp__internal__n_after_start_req_15, - s_n_llhttp__internal__n_after_start_req_18, - s_n_llhttp__internal__n_after_start_req_20, - s_n_llhttp__internal__n_after_start_req_21, - s_n_llhttp__internal__n_after_start_req_19, - s_n_llhttp__internal__n_after_start_req_23, - s_n_llhttp__internal__n_after_start_req_24, - s_n_llhttp__internal__n_after_start_req_26, - s_n_llhttp__internal__n_after_start_req_28, - s_n_llhttp__internal__n_after_start_req_29, - s_n_llhttp__internal__n_after_start_req_27, - s_n_llhttp__internal__n_after_start_req_25, - s_n_llhttp__internal__n_after_start_req_30, - s_n_llhttp__internal__n_after_start_req_22, - s_n_llhttp__internal__n_after_start_req_31, - s_n_llhttp__internal__n_after_start_req_32, - s_n_llhttp__internal__n_after_start_req_35, - s_n_llhttp__internal__n_after_start_req_36, - s_n_llhttp__internal__n_after_start_req_34, - s_n_llhttp__internal__n_after_start_req_37, - s_n_llhttp__internal__n_after_start_req_38, - s_n_llhttp__internal__n_after_start_req_42, - s_n_llhttp__internal__n_after_start_req_43, - s_n_llhttp__internal__n_after_start_req_41, - s_n_llhttp__internal__n_after_start_req_40, - s_n_llhttp__internal__n_after_start_req_39, - s_n_llhttp__internal__n_after_start_req_45, - s_n_llhttp__internal__n_after_start_req_44, - s_n_llhttp__internal__n_after_start_req_33, - s_n_llhttp__internal__n_after_start_req_48, - s_n_llhttp__internal__n_after_start_req_49, - s_n_llhttp__internal__n_after_start_req_50, - s_n_llhttp__internal__n_after_start_req_51, - s_n_llhttp__internal__n_after_start_req_47, - s_n_llhttp__internal__n_after_start_req_46, - s_n_llhttp__internal__n_after_start_req_54, - s_n_llhttp__internal__n_after_start_req_56, - s_n_llhttp__internal__n_after_start_req_57, - s_n_llhttp__internal__n_after_start_req_55, - s_n_llhttp__internal__n_after_start_req_53, - s_n_llhttp__internal__n_after_start_req_58, - s_n_llhttp__internal__n_after_start_req_59, - s_n_llhttp__internal__n_after_start_req_52, - s_n_llhttp__internal__n_after_start_req_61, - s_n_llhttp__internal__n_after_start_req_62, - s_n_llhttp__internal__n_after_start_req_60, - s_n_llhttp__internal__n_after_start_req_65, - s_n_llhttp__internal__n_after_start_req_67, - s_n_llhttp__internal__n_after_start_req_68, - s_n_llhttp__internal__n_after_start_req_66, - s_n_llhttp__internal__n_after_start_req_69, - s_n_llhttp__internal__n_after_start_req_64, - s_n_llhttp__internal__n_after_start_req_63, - s_n_llhttp__internal__n_after_start_req, - s_n_llhttp__internal__n_span_start_llhttp__on_method_1, + s_n_llhttp__internal__n_start_req_2, + s_n_llhttp__internal__n_start_req_3, + s_n_llhttp__internal__n_start_req_1, + s_n_llhttp__internal__n_start_req_4, + s_n_llhttp__internal__n_start_req_6, + s_n_llhttp__internal__n_start_req_8, + s_n_llhttp__internal__n_start_req_9, + s_n_llhttp__internal__n_start_req_7, + s_n_llhttp__internal__n_start_req_5, + s_n_llhttp__internal__n_start_req_12, + s_n_llhttp__internal__n_start_req_13, + s_n_llhttp__internal__n_start_req_11, + s_n_llhttp__internal__n_start_req_10, + s_n_llhttp__internal__n_start_req_14, + s_n_llhttp__internal__n_start_req_17, + s_n_llhttp__internal__n_start_req_16, + s_n_llhttp__internal__n_start_req_15, + s_n_llhttp__internal__n_start_req_18, + s_n_llhttp__internal__n_start_req_20, + s_n_llhttp__internal__n_start_req_21, + s_n_llhttp__internal__n_start_req_19, + s_n_llhttp__internal__n_start_req_23, + s_n_llhttp__internal__n_start_req_24, + s_n_llhttp__internal__n_start_req_26, + s_n_llhttp__internal__n_start_req_28, + s_n_llhttp__internal__n_start_req_29, + s_n_llhttp__internal__n_start_req_27, + s_n_llhttp__internal__n_start_req_25, + s_n_llhttp__internal__n_start_req_30, + s_n_llhttp__internal__n_start_req_22, + s_n_llhttp__internal__n_start_req_31, + s_n_llhttp__internal__n_start_req_32, + s_n_llhttp__internal__n_start_req_35, + s_n_llhttp__internal__n_start_req_36, + s_n_llhttp__internal__n_start_req_34, + s_n_llhttp__internal__n_start_req_37, + s_n_llhttp__internal__n_start_req_38, + s_n_llhttp__internal__n_start_req_42, + s_n_llhttp__internal__n_start_req_43, + s_n_llhttp__internal__n_start_req_41, + s_n_llhttp__internal__n_start_req_40, + s_n_llhttp__internal__n_start_req_39, + s_n_llhttp__internal__n_start_req_45, + s_n_llhttp__internal__n_start_req_44, + s_n_llhttp__internal__n_start_req_33, + s_n_llhttp__internal__n_start_req_48, + s_n_llhttp__internal__n_start_req_49, + s_n_llhttp__internal__n_start_req_50, + s_n_llhttp__internal__n_start_req_51, + s_n_llhttp__internal__n_start_req_47, + s_n_llhttp__internal__n_start_req_46, + s_n_llhttp__internal__n_start_req_54, + s_n_llhttp__internal__n_start_req_56, + s_n_llhttp__internal__n_start_req_57, + s_n_llhttp__internal__n_start_req_55, + s_n_llhttp__internal__n_start_req_53, + s_n_llhttp__internal__n_start_req_58, + s_n_llhttp__internal__n_start_req_59, + s_n_llhttp__internal__n_start_req_52, + s_n_llhttp__internal__n_start_req_61, + s_n_llhttp__internal__n_start_req_62, + s_n_llhttp__internal__n_start_req_60, + s_n_llhttp__internal__n_start_req_65, + s_n_llhttp__internal__n_start_req_67, + s_n_llhttp__internal__n_start_req_68, + s_n_llhttp__internal__n_start_req_66, + s_n_llhttp__internal__n_start_req_69, + s_n_llhttp__internal__n_start_req_64, + s_n_llhttp__internal__n_start_req_63, + s_n_llhttp__internal__n_start_req, s_n_llhttp__internal__n_invoke_llhttp__on_status_complete, s_n_llhttp__internal__n_res_line_almost_done, s_n_llhttp__internal__n_res_status, s_n_llhttp__internal__n_span_start_llhttp__on_status, s_n_llhttp__internal__n_res_status_start, s_n_llhttp__internal__n_res_status_code_otherwise, - s_n_llhttp__internal__n_res_status_code_digit_3, - s_n_llhttp__internal__n_res_status_code_digit_2, - s_n_llhttp__internal__n_res_status_code_digit_1, - s_n_llhttp__internal__n_res_after_version, - s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1, - s_n_llhttp__internal__n_error_74, - s_n_llhttp__internal__n_error_86, + s_n_llhttp__internal__n_res_status_code, + s_n_llhttp__internal__n_res_http_end, s_n_llhttp__internal__n_res_http_minor, - s_n_llhttp__internal__n_error_87, s_n_llhttp__internal__n_res_http_dot, - s_n_llhttp__internal__n_error_88, s_n_llhttp__internal__n_res_http_major, - s_n_llhttp__internal__n_span_start_llhttp__on_version_1, s_n_llhttp__internal__n_start_res, - s_n_llhttp__internal__n_invoke_llhttp__on_method_complete, s_n_llhttp__internal__n_req_or_res_method_2, - s_n_llhttp__internal__n_invoke_update_type_1, s_n_llhttp__internal__n_req_or_res_method_3, s_n_llhttp__internal__n_req_or_res_method_1, s_n_llhttp__internal__n_req_or_res_method, - s_n_llhttp__internal__n_span_start_llhttp__on_method, s_n_llhttp__internal__n_start_req_or_res, s_n_llhttp__internal__n_invoke_load_type, - s_n_llhttp__internal__n_invoke_update_finish, s_n_llhttp__internal__n_start, }; typedef enum llparse_state_e llparse_state_t; -int llhttp__on_method( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__on_url( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__on_version( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__on_header_field( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); @@ -583,11 +541,7 @@ int llhttp__on_body( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__on_chunk_extension_name( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - -int llhttp__on_chunk_extension_value( +int llhttp__on_chunk_parameters( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); @@ -595,17 +549,6 @@ int llhttp__on_status( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__internal__c_load_initial_message_completed( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - return state->initial_message_completed; -} - -int llhttp__on_reset( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__internal__c_update_finish( llhttp__internal_t* state, const unsigned char* p, @@ -634,10 +577,6 @@ int llhttp__internal__c_store_method( return 0; } -int llhttp__on_method_complete( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__internal__c_is_equal_method( llhttp__internal_t* state, const unsigned char* p, @@ -665,13 +604,6 @@ int llhttp__on_url_complete( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__internal__c_test_lenient_flags( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - return (state->lenient_flags & 1) == 1; -} - int llhttp__internal__c_test_flags( llhttp__internal_t* state, const unsigned char* p, @@ -698,22 +630,6 @@ int llhttp__after_message_complete( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__internal__c_update_content_length( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - state->content_length = 0; - return 0; -} - -int llhttp__internal__c_update_initial_message_completed( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - state->initial_message_completed = 1; - return 0; -} - int llhttp__internal__c_update_finish_1( llhttp__internal_t* state, const unsigned char* p, @@ -722,7 +638,7 @@ int llhttp__internal__c_update_finish_1( return 0; } -int llhttp__internal__c_test_lenient_flags_1( +int llhttp__internal__c_test_lenient_flags( llhttp__internal_t* state, const unsigned char* p, const unsigned char* endp) { @@ -736,7 +652,7 @@ int llhttp__internal__c_test_flags_1( return (state->flags & 544) == 544; } -int llhttp__internal__c_test_lenient_flags_2( +int llhttp__internal__c_test_lenient_flags_1( llhttp__internal_t* state, const unsigned char* p, const unsigned char* endp) { @@ -755,6 +671,14 @@ int llhttp__after_headers_complete( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); +int llhttp__internal__c_update_content_length( + llhttp__internal_t* state, + const unsigned char* p, + const unsigned char* endp) { + state->content_length = 0; + return 0; +} + int llhttp__internal__c_mul_add_content_length( llhttp__internal_t* state, const unsigned char* p, @@ -800,14 +724,6 @@ int llhttp__internal__c_or_flags( return 0; } -int llhttp__on_chunk_extension_name_complete( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - -int llhttp__on_chunk_extension_value_complete( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__internal__c_update_finish_3( llhttp__internal_t* state, const unsigned char* p, @@ -841,6 +757,13 @@ int llhttp__internal__c_store_header_state( return 0; } +int llhttp__internal__c_test_lenient_flags_2( + llhttp__internal_t* state, + const unsigned char* p, + const unsigned char* endp) { + return (state->lenient_flags & 1) == 1; +} + int llhttp__on_header_field_complete( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); @@ -976,7 +899,7 @@ int llhttp__internal__c_test_flags_3( return (state->flags & 8) == 8; } -int llhttp__internal__c_test_lenient_flags_9( +int llhttp__internal__c_test_lenient_flags_8( llhttp__internal_t* state, const unsigned char* p, const unsigned char* endp) { @@ -1040,17 +963,13 @@ int llhttp__internal__c_store_http_minor( return 0; } -int llhttp__internal__c_test_lenient_flags_11( +int llhttp__internal__c_test_lenient_flags_10( llhttp__internal_t* state, const unsigned char* p, const unsigned char* endp) { return (state->lenient_flags & 16) == 16; } -int llhttp__on_version_complete( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__internal__c_load_http_major( llhttp__internal_t* state, const unsigned char* p, @@ -1096,6 +1015,11 @@ int llhttp__internal__c_mul_add_status_code( } } state->status_code += match; + + /* Enforce maximum */ + if (state->status_code > 999) { + return 1; + } return 0; } @@ -1147,7 +1071,7 @@ static llparse_state_t llhttp__internal__run( } default: { p++; - goto s_n_llhttp__internal__n_error_7; + goto s_n_llhttp__internal__n_error_4; } } /* UNREACHABLE */; @@ -1157,7 +1081,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_llhttp__after_message_complete: { switch (llhttp__after_message_complete(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_update_content_length; + goto s_n_llhttp__internal__n_invoke_update_finish_2; default: goto s_n_llhttp__internal__n_invoke_update_finish_1; } @@ -1191,9 +1115,9 @@ static llparse_state_t llhttp__internal__run( case 0: goto s_n_llhttp__internal__n_invoke_is_equal_upgrade; case 21: - goto s_n_llhttp__internal__n_pause_11; + goto s_n_llhttp__internal__n_pause_5; default: - goto s_n_llhttp__internal__n_error_28; + goto s_n_llhttp__internal__n_error_14; } /* UNREACHABLE */; abort(); @@ -1216,7 +1140,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_chunk_data_almost_done; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_11; + goto s_n_llhttp__internal__n_error_8; } } /* UNREACHABLE */; @@ -1273,107 +1197,24 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_header; } default: { - goto s_n_llhttp__internal__n_error_12; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete: { - switch (llhttp__on_chunk_extension_name_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_size_almost_done; - case 21: - goto s_n_llhttp__internal__n_pause_5; - default: - goto s_n_llhttp__internal__n_error_15; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1: { - switch (llhttp__on_chunk_extension_name_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_extensions; - case 21: - goto s_n_llhttp__internal__n_pause_6; - default: - goto s_n_llhttp__internal__n_error_16; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete: { - switch (llhttp__on_chunk_extension_value_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_size_almost_done; - case 21: - goto s_n_llhttp__internal__n_pause_7; - default: - goto s_n_llhttp__internal__n_error_18; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_chunk_extension_quoted_value_done: - s_n_llhttp__internal__n_chunk_extension_quoted_value_done: { - if (p == endp) { - return s_n_llhttp__internal__n_chunk_extension_quoted_value_done; - } - switch (*p) { - case 13: { - p++; - goto s_n_llhttp__internal__n_chunk_size_almost_done; - } - case ';': { - p++; - goto s_n_llhttp__internal__n_chunk_extensions; - } - default: { - goto s_n_llhttp__internal__n_error_20; + goto s_n_llhttp__internal__n_error_9; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1: { - switch (llhttp__on_chunk_extension_value_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_extension_quoted_value_done; - case 21: - goto s_n_llhttp__internal__n_pause_8; - default: - goto s_n_llhttp__internal__n_error_19; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_21: - s_n_llhttp__internal__n_error_21: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions quoted value"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_chunk_extension_quoted_value: - s_n_llhttp__internal__n_chunk_extension_quoted_value: { + case s_n_llhttp__internal__n_chunk_parameters: + s_n_llhttp__internal__n_chunk_parameters: { static uint8_t lookup_table[] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1383,184 +1224,46 @@ static llparse_state_t llhttp__internal__run( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }; if (p == endp) { - return s_n_llhttp__internal__n_chunk_extension_quoted_value; - } - switch (lookup_table[(uint8_t) *p]) { - case 1: { - p++; - goto s_n_llhttp__internal__n_chunk_extension_quoted_value; - } - case 2: { - p++; - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_1; - } - default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_2; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2: { - switch (llhttp__on_chunk_extension_value_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_size_otherwise; - case 21: - goto s_n_llhttp__internal__n_pause_9; - default: - goto s_n_llhttp__internal__n_error_22; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_23: - s_n_llhttp__internal__n_error_23: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions value"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_chunk_extension_value: - s_n_llhttp__internal__n_chunk_extension_value: { - static uint8_t lookup_table[] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2, 3, 2, 2, 2, 2, 2, 0, 0, 2, 2, 0, 2, 2, 0, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 4, 0, 0, 0, 0, - 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }; - if (p == endp) { - return s_n_llhttp__internal__n_chunk_extension_value; + return s_n_llhttp__internal__n_chunk_parameters; } switch (lookup_table[(uint8_t) *p]) { case 1: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value; - } - case 2: { - p++; - goto s_n_llhttp__internal__n_chunk_extension_value; - } - case 3: { p++; - goto s_n_llhttp__internal__n_chunk_extension_quoted_value; - } - case 4: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_3; - } - default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_4; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value: - s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_chunk_extension_value; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_2; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_24: - s_n_llhttp__internal__n_error_24: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions name"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_chunk_extension_name: - s_n_llhttp__internal__n_chunk_extension_name: { - static uint8_t lookup_table[] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2, 0, 2, 2, 2, 2, 2, 0, 0, 2, 2, 0, 2, 2, 0, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 3, 0, 4, 0, 0, - 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }; - if (p == endp) { - return s_n_llhttp__internal__n_chunk_extension_name; - } - switch (lookup_table[(uint8_t) *p]) { - case 1: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name; + goto s_n_llhttp__internal__n_chunk_parameters; } case 2: { - p++; - goto s_n_llhttp__internal__n_chunk_extension_name; - } - case 3: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_1; - } - case 4: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_2; + goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_parameters; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_3; + goto s_n_llhttp__internal__n_error_10; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name: - s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name: { + case s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters: + s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters: { if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name; + return s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters; } state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_chunk_extension_name; - goto s_n_llhttp__internal__n_chunk_extension_name; + state->_span_cb0 = llhttp__on_chunk_parameters; + goto s_n_llhttp__internal__n_chunk_parameters; /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_chunk_extensions: - s_n_llhttp__internal__n_chunk_extensions: { + case s_n_llhttp__internal__n_chunk_parameters_ows: + s_n_llhttp__internal__n_chunk_parameters_ows: { if (p == endp) { - return s_n_llhttp__internal__n_chunk_extensions; + return s_n_llhttp__internal__n_chunk_parameters_ows; } switch (*p) { - case 13: { - p++; - goto s_n_llhttp__internal__n_error_13; - } case ' ': { p++; - goto s_n_llhttp__internal__n_error_14; + goto s_n_llhttp__internal__n_chunk_parameters_ows; } default: { - goto s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name; + goto s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters; } } /* UNREACHABLE */; @@ -1578,10 +1281,10 @@ static llparse_state_t llhttp__internal__run( } case ';': { p++; - goto s_n_llhttp__internal__n_chunk_extensions; + goto s_n_llhttp__internal__n_chunk_parameters_ows; } default: { - goto s_n_llhttp__internal__n_error_25; + goto s_n_llhttp__internal__n_error_11; } } /* UNREACHABLE */; @@ -1827,14 +1530,14 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_mul_add_content_length; } default: { - goto s_n_llhttp__internal__n_error_27; + goto s_n_llhttp__internal__n_error_13; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_update_content_length_1: - s_n_llhttp__internal__n_invoke_update_content_length_1: { + case s_n_llhttp__internal__n_invoke_update_content_length: + s_n_llhttp__internal__n_invoke_update_content_length: { switch (llhttp__internal__c_update_content_length(state, p, endp)) { default: goto s_n_llhttp__internal__n_chunk_size_digit; @@ -1898,13 +1601,13 @@ static llparse_state_t llhttp__internal__run( case 1: goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_1; case 2: - goto s_n_llhttp__internal__n_invoke_update_content_length_1; + goto s_n_llhttp__internal__n_invoke_update_content_length; case 3: goto s_n_llhttp__internal__n_span_start_llhttp__on_body_1; case 4: goto s_n_llhttp__internal__n_invoke_update_finish_3; case 5: - goto s_n_llhttp__internal__n_error_29; + goto s_n_llhttp__internal__n_error_15; default: goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete; } @@ -1922,7 +1625,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_test_flags; } default: { - goto s_n_llhttp__internal__n_error_32; + goto s_n_llhttp__internal__n_error_18; } } /* UNREACHABLE */; @@ -1945,8 +1648,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_33: - s_n_llhttp__internal__n_error_33: { + case s_n_llhttp__internal__n_error_19: + s_n_llhttp__internal__n_error_19: { state->error = 0xa; state->reason = "Invalid header field char"; state->error_pos = (const char*) p; @@ -1958,12 +1661,8 @@ static llparse_state_t llhttp__internal__run( case s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete: s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete: { switch (llhttp__on_header_value_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_header_field_start; - case 21: - goto s_n_llhttp__internal__n_pause_14; default: - goto s_n_llhttp__internal__n_error_37; + goto s_n_llhttp__internal__n_header_field_start; } /* UNREACHABLE */; abort(); @@ -1987,11 +1686,11 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_5; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4; } case ' ': { p++; - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_5; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4; } default: { goto s_n_llhttp__internal__n_invoke_load_header_state; @@ -2011,7 +1710,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_header_value_discard_lws; } default: { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_6; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_5; } } /* UNREACHABLE */; @@ -2024,10 +1723,10 @@ static llparse_state_t llhttp__internal__run( } switch (*p) { case 9: { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_7; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_6; } case ' ': { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_7; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_6; } default: { goto s_n_llhttp__internal__n_invoke_load_header_state_4; @@ -2047,7 +1746,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_header_value_lws; } default: { - goto s_n_llhttp__internal__n_error_41; + goto s_n_llhttp__internal__n_error_25; } } /* UNREACHABLE */; @@ -2073,8 +1772,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_42: - s_n_llhttp__internal__n_error_42: { + case s_n_llhttp__internal__n_error_26: + s_n_llhttp__internal__n_error_26: { state->error = 0xa; state->reason = "Invalid header value char"; state->error_pos = (const char*) p; @@ -2093,7 +1792,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_1; } default: { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_8; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_7; } } /* UNREACHABLE */; @@ -2270,8 +1969,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_44: - s_n_llhttp__internal__n_error_44: { + case s_n_llhttp__internal__n_error_28: + s_n_llhttp__internal__n_error_28: { state->error = 0xb; state->reason = "Content-Length overflow"; state->error_pos = (const char*) p; @@ -2280,8 +1979,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_45: - s_n_llhttp__internal__n_error_45: { + case s_n_llhttp__internal__n_error_29: + s_n_llhttp__internal__n_error_29: { state->error = 0xb; state->reason = "Invalid character in Content-Length"; state->error_pos = (const char*) p; @@ -2376,8 +2075,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_47: - s_n_llhttp__internal__n_error_47: { + case s_n_llhttp__internal__n_error_31: + s_n_llhttp__internal__n_error_31: { state->error = 0xf; state->reason = "Invalid `Transfer-Encoding` header value"; state->error_pos = (const char*) p; @@ -2386,8 +2085,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_46: - s_n_llhttp__internal__n_error_46: { + case s_n_llhttp__internal__n_error_30: + s_n_llhttp__internal__n_error_30: { state->error = 0xf; state->reason = "Invalid `Transfer-Encoding` header value"; state->error_pos = (const char*) p; @@ -2588,7 +2287,7 @@ static llparse_state_t llhttp__internal__run( } case 10: { p++; - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_3; } case 13: { p++; @@ -2608,12 +2307,8 @@ static llparse_state_t llhttp__internal__run( case s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete: s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete: { switch (llhttp__on_header_field_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_header_value_discard_ws; - case 21: - goto s_n_llhttp__internal__n_pause_15; default: - goto s_n_llhttp__internal__n_error_34; + goto s_n_llhttp__internal__n_header_value_discard_ws; } /* UNREACHABLE */; abort(); @@ -2628,7 +2323,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_2; } default: { - goto s_n_llhttp__internal__n_error_48; + goto s_n_llhttp__internal__n_error_32; } } /* UNREACHABLE */; @@ -2712,7 +2407,7 @@ static llparse_state_t llhttp__internal__run( } switch (*p) { case ' ': { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_3; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_2; } case ':': { goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_1; @@ -2954,23 +2649,6 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_headers_start: - s_n_llhttp__internal__n_headers_start: { - if (p == endp) { - return s_n_llhttp__internal__n_headers_start; - } - switch (*p) { - case ' ': { - p++; - goto s_n_llhttp__internal__n_invoke_test_lenient_flags; - } - default: { - goto s_n_llhttp__internal__n_header_field_start; - } - } - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_url_to_http_09: s_n_llhttp__internal__n_url_to_http_09: { if (p == endp) { @@ -2979,11 +2657,11 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 12: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } default: { goto s_n_llhttp__internal__n_invoke_update_http_major; @@ -3000,11 +2678,11 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 12: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } default: { p++; @@ -3025,7 +2703,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_to_http_09; } default: { - goto s_n_llhttp__internal__n_error_49; + goto s_n_llhttp__internal__n_error_33; } } /* UNREACHABLE */; @@ -3039,18 +2717,18 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 12: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 13: { p++; goto s_n_llhttp__internal__n_url_skip_lf_to_http09_1; } default: { - goto s_n_llhttp__internal__n_error_49; + goto s_n_llhttp__internal__n_error_33; } } /* UNREACHABLE */; @@ -3068,13 +2746,13 @@ static llparse_state_t llhttp__internal__run( switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_error_55; + goto s_n_llhttp__internal__n_error_38; } case kMatchPause: { return s_n_llhttp__internal__n_req_pri_upgrade; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_56; + goto s_n_llhttp__internal__n_error_39; } } /* UNREACHABLE */; @@ -3088,10 +2766,10 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 10: { p++; - goto s_n_llhttp__internal__n_headers_start; + goto s_n_llhttp__internal__n_header_field_start; } default: { - goto s_n_llhttp__internal__n_error_54; + goto s_n_llhttp__internal__n_error_37; } } /* UNREACHABLE */; @@ -3105,63 +2783,19 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 10: { p++; - goto s_n_llhttp__internal__n_headers_start; + goto s_n_llhttp__internal__n_header_field_start; } case 13: { p++; goto s_n_llhttp__internal__n_req_http_complete_1; } default: { - goto s_n_llhttp__internal__n_error_54; + goto s_n_llhttp__internal__n_error_37; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_load_method_1: - s_n_llhttp__internal__n_invoke_load_method_1: { - switch (llhttp__internal__c_load_method(state, p, endp)) { - case 34: - goto s_n_llhttp__internal__n_req_pri_upgrade; - default: - goto s_n_llhttp__internal__n_req_http_complete; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_version_complete: - s_n_llhttp__internal__n_invoke_llhttp__on_version_complete: { - switch (llhttp__on_version_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_invoke_load_method_1; - case 21: - goto s_n_llhttp__internal__n_pause_17; - default: - goto s_n_llhttp__internal__n_error_53; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_52: - s_n_llhttp__internal__n_error_52: { - state->error = 0x9; - state->reason = "Invalid HTTP version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_57: - s_n_llhttp__internal__n_error_57: { - state->error = 0x9; - state->reason = "Invalid minor version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_http_minor: s_n_llhttp__internal__n_req_http_minor: { if (p == endp) { @@ -3219,22 +2853,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_minor; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_2; + goto s_n_llhttp__internal__n_error_42; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_58: - s_n_llhttp__internal__n_error_58: { - state->error = 0x9; - state->reason = "Expected dot"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_http_dot: s_n_llhttp__internal__n_req_http_dot: { if (p == endp) { @@ -3246,22 +2870,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_http_minor; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_3; + goto s_n_llhttp__internal__n_error_43; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_59: - s_n_llhttp__internal__n_error_59: { - state->error = 0x9; - state->reason = "Invalid major version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_http_major: s_n_llhttp__internal__n_req_http_major: { if (p == endp) { @@ -3319,23 +2933,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_major; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_4; + goto s_n_llhttp__internal__n_error_44; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_version: - s_n_llhttp__internal__n_span_start_llhttp__on_version: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_version; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_version; - goto s_n_llhttp__internal__n_req_http_major; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_http_start_1: s_n_llhttp__internal__n_req_http_start_1: { llparse_match_t match_seq; @@ -3354,7 +2957,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_http_start_1; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_62; + goto s_n_llhttp__internal__n_error_47; } } /* UNREACHABLE */; @@ -3378,7 +2981,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_http_start_2; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_62; + goto s_n_llhttp__internal__n_error_47; } } /* UNREACHABLE */; @@ -3402,7 +3005,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_http_start_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_62; + goto s_n_llhttp__internal__n_error_47; } } /* UNREACHABLE */; @@ -3431,7 +3034,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_http_start_3; } default: { - goto s_n_llhttp__internal__n_error_62; + goto s_n_llhttp__internal__n_error_47; } } /* UNREACHABLE */; @@ -3445,11 +3048,11 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 12: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } default: { goto s_n_llhttp__internal__n_invoke_llhttp__on_url_complete_1; @@ -3466,11 +3069,11 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 12: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } default: { p++; @@ -3506,7 +3109,7 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 2: { goto s_n_llhttp__internal__n_span_end_llhttp__on_url_6; @@ -3522,7 +3125,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_fragment; } default: { - goto s_n_llhttp__internal__n_error_63; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -3564,7 +3167,7 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 2: { goto s_n_llhttp__internal__n_span_end_llhttp__on_url_9; @@ -3583,7 +3186,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_span_end_stub_query_3; } default: { - goto s_n_llhttp__internal__n_error_64; + goto s_n_llhttp__internal__n_error_49; } } /* UNREACHABLE */; @@ -3597,14 +3200,14 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 10: { goto s_n_llhttp__internal__n_span_end_llhttp__on_url_3; } case 12: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 13: { goto s_n_llhttp__internal__n_span_end_llhttp__on_url_4; @@ -3621,7 +3224,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_query; } default: { - goto s_n_llhttp__internal__n_error_65; + goto s_n_llhttp__internal__n_error_50; } } /* UNREACHABLE */; @@ -3653,7 +3256,7 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 2: { p++; @@ -3722,7 +3325,7 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 2: { goto s_n_llhttp__internal__n_span_end_llhttp__on_url_12; @@ -3746,10 +3349,10 @@ static llparse_state_t llhttp__internal__run( } case 8: { p++; - goto s_n_llhttp__internal__n_error_66; + goto s_n_llhttp__internal__n_error_51; } default: { - goto s_n_llhttp__internal__n_error_67; + goto s_n_llhttp__internal__n_error_52; } } /* UNREACHABLE */; @@ -3781,7 +3384,7 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 2: { goto s_n_llhttp__internal__n_span_end_llhttp__on_url; @@ -3808,7 +3411,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_server_with_at; } default: { - goto s_n_llhttp__internal__n_error_68; + goto s_n_llhttp__internal__n_error_53; } } /* UNREACHABLE */; @@ -3825,7 +3428,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_server; } default: { - goto s_n_llhttp__internal__n_error_70; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3839,30 +3442,30 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 10: { p++; - goto s_n_llhttp__internal__n_error_69; + goto s_n_llhttp__internal__n_error_54; } case 12: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 13: { p++; - goto s_n_llhttp__internal__n_error_69; + goto s_n_llhttp__internal__n_error_54; } case ' ': { p++; - goto s_n_llhttp__internal__n_error_69; + goto s_n_llhttp__internal__n_error_54; } case '/': { p++; goto s_n_llhttp__internal__n_url_schema_delim_1; } default: { - goto s_n_llhttp__internal__n_error_70; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3904,11 +3507,11 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 2: { p++; - goto s_n_llhttp__internal__n_error_69; + goto s_n_llhttp__internal__n_error_54; } case 3: { goto s_n_llhttp__internal__n_span_end_stub_schema; @@ -3918,7 +3521,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_schema; } default: { - goto s_n_llhttp__internal__n_error_71; + goto s_n_llhttp__internal__n_error_56; } } /* UNREACHABLE */; @@ -3950,11 +3553,11 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 2: { p++; - goto s_n_llhttp__internal__n_error_69; + goto s_n_llhttp__internal__n_error_54; } case 3: { goto s_n_llhttp__internal__n_span_start_stub_path_2; @@ -3963,7 +3566,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_schema; } default: { - goto s_n_llhttp__internal__n_error_72; + goto s_n_llhttp__internal__n_error_57; } } /* UNREACHABLE */; @@ -3988,11 +3591,11 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 12: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } default: { goto s_n_llhttp__internal__n_span_start_llhttp__on_url_1; @@ -4020,11 +3623,11 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } case 12: { p++; - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_error_1; } default: { goto s_n_llhttp__internal__n_span_start_llhttp__on_url; @@ -4061,29 +3664,16 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_spaces_before_url; } default: { - goto s_n_llhttp__internal__n_error_73; + goto s_n_llhttp__internal__n_error_58; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1: - s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1: { - switch (llhttp__on_method_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_req_first_space_before_url; - case 21: - goto s_n_llhttp__internal__n_pause_22; - default: - goto s_n_llhttp__internal__n_error_90; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_after_start_req_2: - s_n_llhttp__internal__n_after_start_req_2: { + case s_n_llhttp__internal__n_start_req_2: + s_n_llhttp__internal__n_start_req_2: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_2; + return s_n_llhttp__internal__n_start_req_2; } switch (*p) { case 'L': { @@ -4092,18 +3682,18 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_3: - s_n_llhttp__internal__n_after_start_req_3: { + case s_n_llhttp__internal__n_start_req_3: + s_n_llhttp__internal__n_start_req_3: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_3; + return s_n_llhttp__internal__n_start_req_3; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob18, 6); p = match_seq.current; @@ -4114,42 +3704,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_3; + return s_n_llhttp__internal__n_start_req_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_1: - s_n_llhttp__internal__n_after_start_req_1: { + case s_n_llhttp__internal__n_start_req_1: + s_n_llhttp__internal__n_start_req_1: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_1; + return s_n_llhttp__internal__n_start_req_1; } switch (*p) { case 'C': { p++; - goto s_n_llhttp__internal__n_after_start_req_2; + goto s_n_llhttp__internal__n_start_req_2; } case 'N': { p++; - goto s_n_llhttp__internal__n_after_start_req_3; + goto s_n_llhttp__internal__n_start_req_3; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_4: - s_n_llhttp__internal__n_after_start_req_4: { + case s_n_llhttp__internal__n_start_req_4: + s_n_llhttp__internal__n_start_req_4: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_4; + return s_n_llhttp__internal__n_start_req_4; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob19, 3); p = match_seq.current; @@ -4160,21 +3750,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_4; + return s_n_llhttp__internal__n_start_req_4; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_6: - s_n_llhttp__internal__n_after_start_req_6: { + case s_n_llhttp__internal__n_start_req_6: + s_n_llhttp__internal__n_start_req_6: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_6; + return s_n_llhttp__internal__n_start_req_6; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob20, 6); p = match_seq.current; @@ -4185,21 +3775,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_6; + return s_n_llhttp__internal__n_start_req_6; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_8: - s_n_llhttp__internal__n_after_start_req_8: { + case s_n_llhttp__internal__n_start_req_8: + s_n_llhttp__internal__n_start_req_8: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_8; + return s_n_llhttp__internal__n_start_req_8; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob21, 4); p = match_seq.current; @@ -4210,19 +3800,19 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_8; + return s_n_llhttp__internal__n_start_req_8; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_9: - s_n_llhttp__internal__n_after_start_req_9: { + case s_n_llhttp__internal__n_start_req_9: + s_n_llhttp__internal__n_start_req_9: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_9; + return s_n_llhttp__internal__n_start_req_9; } switch (*p) { case 'Y': { @@ -4231,60 +3821,60 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_7: - s_n_llhttp__internal__n_after_start_req_7: { + case s_n_llhttp__internal__n_start_req_7: + s_n_llhttp__internal__n_start_req_7: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_7; + return s_n_llhttp__internal__n_start_req_7; } switch (*p) { case 'N': { p++; - goto s_n_llhttp__internal__n_after_start_req_8; + goto s_n_llhttp__internal__n_start_req_8; } case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_9; + goto s_n_llhttp__internal__n_start_req_9; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_5: - s_n_llhttp__internal__n_after_start_req_5: { + case s_n_llhttp__internal__n_start_req_5: + s_n_llhttp__internal__n_start_req_5: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_5; + return s_n_llhttp__internal__n_start_req_5; } switch (*p) { case 'H': { p++; - goto s_n_llhttp__internal__n_after_start_req_6; + goto s_n_llhttp__internal__n_start_req_6; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_7; + goto s_n_llhttp__internal__n_start_req_7; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_12: - s_n_llhttp__internal__n_after_start_req_12: { + case s_n_llhttp__internal__n_start_req_12: + s_n_llhttp__internal__n_start_req_12: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_12; + return s_n_llhttp__internal__n_start_req_12; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob22, 3); p = match_seq.current; @@ -4295,21 +3885,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_12; + return s_n_llhttp__internal__n_start_req_12; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_13: - s_n_llhttp__internal__n_after_start_req_13: { + case s_n_llhttp__internal__n_start_req_13: + s_n_llhttp__internal__n_start_req_13: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_13; + return s_n_llhttp__internal__n_start_req_13; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob23, 5); p = match_seq.current; @@ -4320,59 +3910,59 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_13; + return s_n_llhttp__internal__n_start_req_13; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_11: - s_n_llhttp__internal__n_after_start_req_11: { + case s_n_llhttp__internal__n_start_req_11: + s_n_llhttp__internal__n_start_req_11: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_11; + return s_n_llhttp__internal__n_start_req_11; } switch (*p) { case 'L': { p++; - goto s_n_llhttp__internal__n_after_start_req_12; + goto s_n_llhttp__internal__n_start_req_12; } case 'S': { p++; - goto s_n_llhttp__internal__n_after_start_req_13; + goto s_n_llhttp__internal__n_start_req_13; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_10: - s_n_llhttp__internal__n_after_start_req_10: { + case s_n_llhttp__internal__n_start_req_10: + s_n_llhttp__internal__n_start_req_10: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_10; + return s_n_llhttp__internal__n_start_req_10; } switch (*p) { case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_11; + goto s_n_llhttp__internal__n_start_req_11; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_14: - s_n_llhttp__internal__n_after_start_req_14: { + case s_n_llhttp__internal__n_start_req_14: + s_n_llhttp__internal__n_start_req_14: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_14; + return s_n_llhttp__internal__n_start_req_14; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob24, 4); p = match_seq.current; @@ -4383,21 +3973,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_14; + return s_n_llhttp__internal__n_start_req_14; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_17: - s_n_llhttp__internal__n_after_start_req_17: { + case s_n_llhttp__internal__n_start_req_17: + s_n_llhttp__internal__n_start_req_17: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_17; + return s_n_llhttp__internal__n_start_req_17; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob26, 9); p = match_seq.current; @@ -4408,24 +3998,24 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_17; + return s_n_llhttp__internal__n_start_req_17; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_16: - s_n_llhttp__internal__n_after_start_req_16: { + case s_n_llhttp__internal__n_start_req_16: + s_n_llhttp__internal__n_start_req_16: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_16; + return s_n_llhttp__internal__n_start_req_16; } switch (*p) { case '_': { p++; - goto s_n_llhttp__internal__n_after_start_req_17; + goto s_n_llhttp__internal__n_start_req_17; } default: { match = 1; @@ -4435,36 +4025,36 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_15: - s_n_llhttp__internal__n_after_start_req_15: { + case s_n_llhttp__internal__n_start_req_15: + s_n_llhttp__internal__n_start_req_15: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_15; + return s_n_llhttp__internal__n_start_req_15; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob25, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_after_start_req_16; + goto s_n_llhttp__internal__n_start_req_16; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_15; + return s_n_llhttp__internal__n_start_req_15; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_18: - s_n_llhttp__internal__n_after_start_req_18: { + case s_n_llhttp__internal__n_start_req_18: + s_n_llhttp__internal__n_start_req_18: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_18; + return s_n_llhttp__internal__n_start_req_18; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob27, 3); p = match_seq.current; @@ -4475,21 +4065,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_18; + return s_n_llhttp__internal__n_start_req_18; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_20: - s_n_llhttp__internal__n_after_start_req_20: { + case s_n_llhttp__internal__n_start_req_20: + s_n_llhttp__internal__n_start_req_20: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_20; + return s_n_llhttp__internal__n_start_req_20; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob28, 2); p = match_seq.current; @@ -4500,21 +4090,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_20; + return s_n_llhttp__internal__n_start_req_20; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_21: - s_n_llhttp__internal__n_after_start_req_21: { + case s_n_llhttp__internal__n_start_req_21: + s_n_llhttp__internal__n_start_req_21: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_21; + return s_n_llhttp__internal__n_start_req_21; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob29, 2); p = match_seq.current; @@ -4525,42 +4115,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_21; + return s_n_llhttp__internal__n_start_req_21; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_19: - s_n_llhttp__internal__n_after_start_req_19: { + case s_n_llhttp__internal__n_start_req_19: + s_n_llhttp__internal__n_start_req_19: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_19; + return s_n_llhttp__internal__n_start_req_19; } switch (*p) { case 'I': { p++; - goto s_n_llhttp__internal__n_after_start_req_20; + goto s_n_llhttp__internal__n_start_req_20; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_21; + goto s_n_llhttp__internal__n_start_req_21; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_23: - s_n_llhttp__internal__n_after_start_req_23: { + case s_n_llhttp__internal__n_start_req_23: + s_n_llhttp__internal__n_start_req_23: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_23; + return s_n_llhttp__internal__n_start_req_23; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob30, 6); p = match_seq.current; @@ -4571,21 +4161,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_23; + return s_n_llhttp__internal__n_start_req_23; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_24: - s_n_llhttp__internal__n_after_start_req_24: { + case s_n_llhttp__internal__n_start_req_24: + s_n_llhttp__internal__n_start_req_24: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_24; + return s_n_llhttp__internal__n_start_req_24; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob31, 3); p = match_seq.current; @@ -4596,21 +4186,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_24; + return s_n_llhttp__internal__n_start_req_24; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_26: - s_n_llhttp__internal__n_after_start_req_26: { + case s_n_llhttp__internal__n_start_req_26: + s_n_llhttp__internal__n_start_req_26: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_26; + return s_n_llhttp__internal__n_start_req_26; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob32, 7); p = match_seq.current; @@ -4621,21 +4211,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_26; + return s_n_llhttp__internal__n_start_req_26; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_28: - s_n_llhttp__internal__n_after_start_req_28: { + case s_n_llhttp__internal__n_start_req_28: + s_n_llhttp__internal__n_start_req_28: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_28; + return s_n_llhttp__internal__n_start_req_28; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob33, 6); p = match_seq.current; @@ -4646,19 +4236,19 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_28; + return s_n_llhttp__internal__n_start_req_28; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_29: - s_n_llhttp__internal__n_after_start_req_29: { + case s_n_llhttp__internal__n_start_req_29: + s_n_llhttp__internal__n_start_req_29: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_29; + return s_n_llhttp__internal__n_start_req_29; } switch (*p) { case 'L': { @@ -4667,60 +4257,60 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_27: - s_n_llhttp__internal__n_after_start_req_27: { + case s_n_llhttp__internal__n_start_req_27: + s_n_llhttp__internal__n_start_req_27: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_27; + return s_n_llhttp__internal__n_start_req_27; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_28; + goto s_n_llhttp__internal__n_start_req_28; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_29; + goto s_n_llhttp__internal__n_start_req_29; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_25: - s_n_llhttp__internal__n_after_start_req_25: { + case s_n_llhttp__internal__n_start_req_25: + s_n_llhttp__internal__n_start_req_25: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_25; + return s_n_llhttp__internal__n_start_req_25; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_26; + goto s_n_llhttp__internal__n_start_req_26; } case 'C': { p++; - goto s_n_llhttp__internal__n_after_start_req_27; + goto s_n_llhttp__internal__n_start_req_27; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_30: - s_n_llhttp__internal__n_after_start_req_30: { + case s_n_llhttp__internal__n_start_req_30: + s_n_llhttp__internal__n_start_req_30: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_30; + return s_n_llhttp__internal__n_start_req_30; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob34, 2); p = match_seq.current; @@ -4731,50 +4321,50 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_30; + return s_n_llhttp__internal__n_start_req_30; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_22: - s_n_llhttp__internal__n_after_start_req_22: { + case s_n_llhttp__internal__n_start_req_22: + s_n_llhttp__internal__n_start_req_22: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_22; + return s_n_llhttp__internal__n_start_req_22; } switch (*p) { case '-': { p++; - goto s_n_llhttp__internal__n_after_start_req_23; + goto s_n_llhttp__internal__n_start_req_23; } case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_24; + goto s_n_llhttp__internal__n_start_req_24; } case 'K': { p++; - goto s_n_llhttp__internal__n_after_start_req_25; + goto s_n_llhttp__internal__n_start_req_25; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_30; + goto s_n_llhttp__internal__n_start_req_30; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_31: - s_n_llhttp__internal__n_after_start_req_31: { + case s_n_llhttp__internal__n_start_req_31: + s_n_llhttp__internal__n_start_req_31: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_31; + return s_n_llhttp__internal__n_start_req_31; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob35, 5); p = match_seq.current; @@ -4785,21 +4375,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_31; + return s_n_llhttp__internal__n_start_req_31; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_32: - s_n_llhttp__internal__n_after_start_req_32: { + case s_n_llhttp__internal__n_start_req_32: + s_n_llhttp__internal__n_start_req_32: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_32; + return s_n_llhttp__internal__n_start_req_32; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob36, 6); p = match_seq.current; @@ -4810,21 +4400,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_32; + return s_n_llhttp__internal__n_start_req_32; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_35: - s_n_llhttp__internal__n_after_start_req_35: { + case s_n_llhttp__internal__n_start_req_35: + s_n_llhttp__internal__n_start_req_35: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_35; + return s_n_llhttp__internal__n_start_req_35; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob37, 2); p = match_seq.current; @@ -4835,21 +4425,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_35; + return s_n_llhttp__internal__n_start_req_35; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_36: - s_n_llhttp__internal__n_after_start_req_36: { + case s_n_llhttp__internal__n_start_req_36: + s_n_llhttp__internal__n_start_req_36: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_36; + return s_n_llhttp__internal__n_start_req_36; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob38, 2); p = match_seq.current; @@ -4860,42 +4450,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_36; + return s_n_llhttp__internal__n_start_req_36; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_34: - s_n_llhttp__internal__n_after_start_req_34: { + case s_n_llhttp__internal__n_start_req_34: + s_n_llhttp__internal__n_start_req_34: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_34; + return s_n_llhttp__internal__n_start_req_34; } switch (*p) { case 'T': { p++; - goto s_n_llhttp__internal__n_after_start_req_35; + goto s_n_llhttp__internal__n_start_req_35; } case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_36; + goto s_n_llhttp__internal__n_start_req_36; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_37: - s_n_llhttp__internal__n_after_start_req_37: { + case s_n_llhttp__internal__n_start_req_37: + s_n_llhttp__internal__n_start_req_37: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_37; + return s_n_llhttp__internal__n_start_req_37; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob39, 2); p = match_seq.current; @@ -4906,21 +4496,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_37; + return s_n_llhttp__internal__n_start_req_37; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_38: - s_n_llhttp__internal__n_after_start_req_38: { + case s_n_llhttp__internal__n_start_req_38: + s_n_llhttp__internal__n_start_req_38: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_38; + return s_n_llhttp__internal__n_start_req_38; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob40, 2); p = match_seq.current; @@ -4931,21 +4521,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_38; + return s_n_llhttp__internal__n_start_req_38; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_42: - s_n_llhttp__internal__n_after_start_req_42: { + case s_n_llhttp__internal__n_start_req_42: + s_n_llhttp__internal__n_start_req_42: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_42; + return s_n_llhttp__internal__n_start_req_42; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob41, 3); p = match_seq.current; @@ -4956,21 +4546,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_42; + return s_n_llhttp__internal__n_start_req_42; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_43: - s_n_llhttp__internal__n_after_start_req_43: { + case s_n_llhttp__internal__n_start_req_43: + s_n_llhttp__internal__n_start_req_43: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_43; + return s_n_llhttp__internal__n_start_req_43; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob42, 4); p = match_seq.current; @@ -4981,57 +4571,57 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_43; + return s_n_llhttp__internal__n_start_req_43; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_41: - s_n_llhttp__internal__n_after_start_req_41: { + case s_n_llhttp__internal__n_start_req_41: + s_n_llhttp__internal__n_start_req_41: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_41; + return s_n_llhttp__internal__n_start_req_41; } switch (*p) { case 'F': { p++; - goto s_n_llhttp__internal__n_after_start_req_42; + goto s_n_llhttp__internal__n_start_req_42; } case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_43; + goto s_n_llhttp__internal__n_start_req_43; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_40: - s_n_llhttp__internal__n_after_start_req_40: { + case s_n_llhttp__internal__n_start_req_40: + s_n_llhttp__internal__n_start_req_40: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_40; + return s_n_llhttp__internal__n_start_req_40; } switch (*p) { case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_41; + goto s_n_llhttp__internal__n_start_req_41; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_39: - s_n_llhttp__internal__n_after_start_req_39: { + case s_n_llhttp__internal__n_start_req_39: + s_n_llhttp__internal__n_start_req_39: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_39; + return s_n_llhttp__internal__n_start_req_39; } switch (*p) { case 'I': { @@ -5041,21 +4631,21 @@ static llparse_state_t llhttp__internal__run( } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_40; + goto s_n_llhttp__internal__n_start_req_40; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_45: - s_n_llhttp__internal__n_after_start_req_45: { + case s_n_llhttp__internal__n_start_req_45: + s_n_llhttp__internal__n_start_req_45: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_45; + return s_n_llhttp__internal__n_start_req_45; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob43, 2); p = match_seq.current; @@ -5066,24 +4656,24 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_45; + return s_n_llhttp__internal__n_start_req_45; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_44: - s_n_llhttp__internal__n_after_start_req_44: { + case s_n_llhttp__internal__n_start_req_44: + s_n_llhttp__internal__n_start_req_44: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_44; + return s_n_llhttp__internal__n_start_req_44; } switch (*p) { case 'R': { p++; - goto s_n_llhttp__internal__n_after_start_req_45; + goto s_n_llhttp__internal__n_start_req_45; } case 'T': { p++; @@ -5091,51 +4681,51 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_33: - s_n_llhttp__internal__n_after_start_req_33: { + case s_n_llhttp__internal__n_start_req_33: + s_n_llhttp__internal__n_start_req_33: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_33; + return s_n_llhttp__internal__n_start_req_33; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_34; + goto s_n_llhttp__internal__n_start_req_34; } case 'L': { p++; - goto s_n_llhttp__internal__n_after_start_req_37; + goto s_n_llhttp__internal__n_start_req_37; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_38; + goto s_n_llhttp__internal__n_start_req_38; } case 'R': { p++; - goto s_n_llhttp__internal__n_after_start_req_39; + goto s_n_llhttp__internal__n_start_req_39; } case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_44; + goto s_n_llhttp__internal__n_start_req_44; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_48: - s_n_llhttp__internal__n_after_start_req_48: { + case s_n_llhttp__internal__n_start_req_48: + s_n_llhttp__internal__n_start_req_48: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_48; + return s_n_llhttp__internal__n_start_req_48; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob44, 3); p = match_seq.current; @@ -5146,21 +4736,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_48; + return s_n_llhttp__internal__n_start_req_48; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_49: - s_n_llhttp__internal__n_after_start_req_49: { + case s_n_llhttp__internal__n_start_req_49: + s_n_llhttp__internal__n_start_req_49: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_49; + return s_n_llhttp__internal__n_start_req_49; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob45, 3); p = match_seq.current; @@ -5171,21 +4761,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_49; + return s_n_llhttp__internal__n_start_req_49; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_50: - s_n_llhttp__internal__n_after_start_req_50: { + case s_n_llhttp__internal__n_start_req_50: + s_n_llhttp__internal__n_start_req_50: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_50; + return s_n_llhttp__internal__n_start_req_50; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob46, 5); p = match_seq.current; @@ -5196,21 +4786,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_50; + return s_n_llhttp__internal__n_start_req_50; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_51: - s_n_llhttp__internal__n_after_start_req_51: { + case s_n_llhttp__internal__n_start_req_51: + s_n_llhttp__internal__n_start_req_51: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_51; + return s_n_llhttp__internal__n_start_req_51; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob47, 3); p = match_seq.current; @@ -5221,67 +4811,67 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_51; + return s_n_llhttp__internal__n_start_req_51; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_47: - s_n_llhttp__internal__n_after_start_req_47: { + case s_n_llhttp__internal__n_start_req_47: + s_n_llhttp__internal__n_start_req_47: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_47; + return s_n_llhttp__internal__n_start_req_47; } switch (*p) { case 'B': { p++; - goto s_n_llhttp__internal__n_after_start_req_48; + goto s_n_llhttp__internal__n_start_req_48; } case 'C': { p++; - goto s_n_llhttp__internal__n_after_start_req_49; + goto s_n_llhttp__internal__n_start_req_49; } case 'D': { p++; - goto s_n_llhttp__internal__n_after_start_req_50; + goto s_n_llhttp__internal__n_start_req_50; } case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_51; + goto s_n_llhttp__internal__n_start_req_51; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_46: - s_n_llhttp__internal__n_after_start_req_46: { + case s_n_llhttp__internal__n_start_req_46: + s_n_llhttp__internal__n_start_req_46: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_46; + return s_n_llhttp__internal__n_start_req_46; } switch (*p) { case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_47; + goto s_n_llhttp__internal__n_start_req_47; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_54: - s_n_llhttp__internal__n_after_start_req_54: { + case s_n_llhttp__internal__n_start_req_54: + s_n_llhttp__internal__n_start_req_54: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_54; + return s_n_llhttp__internal__n_start_req_54; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob48, 3); p = match_seq.current; @@ -5292,19 +4882,19 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_54; + return s_n_llhttp__internal__n_start_req_54; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_56: - s_n_llhttp__internal__n_after_start_req_56: { + case s_n_llhttp__internal__n_start_req_56: + s_n_llhttp__internal__n_start_req_56: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_56; + return s_n_llhttp__internal__n_start_req_56; } switch (*p) { case 'P': { @@ -5313,18 +4903,18 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_57: - s_n_llhttp__internal__n_after_start_req_57: { + case s_n_llhttp__internal__n_start_req_57: + s_n_llhttp__internal__n_start_req_57: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_57; + return s_n_llhttp__internal__n_start_req_57; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob49, 9); p = match_seq.current; @@ -5335,63 +4925,63 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_57; + return s_n_llhttp__internal__n_start_req_57; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_55: - s_n_llhttp__internal__n_after_start_req_55: { + case s_n_llhttp__internal__n_start_req_55: + s_n_llhttp__internal__n_start_req_55: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_55; + return s_n_llhttp__internal__n_start_req_55; } switch (*p) { case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_56; + goto s_n_llhttp__internal__n_start_req_56; } case '_': { p++; - goto s_n_llhttp__internal__n_after_start_req_57; + goto s_n_llhttp__internal__n_start_req_57; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_53: - s_n_llhttp__internal__n_after_start_req_53: { + case s_n_llhttp__internal__n_start_req_53: + s_n_llhttp__internal__n_start_req_53: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_53; + return s_n_llhttp__internal__n_start_req_53; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_54; + goto s_n_llhttp__internal__n_start_req_54; } case 'T': { p++; - goto s_n_llhttp__internal__n_after_start_req_55; + goto s_n_llhttp__internal__n_start_req_55; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_58: - s_n_llhttp__internal__n_after_start_req_58: { + case s_n_llhttp__internal__n_start_req_58: + s_n_llhttp__internal__n_start_req_58: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_58; + return s_n_llhttp__internal__n_start_req_58; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob50, 4); p = match_seq.current; @@ -5402,21 +4992,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_58; + return s_n_llhttp__internal__n_start_req_58; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_59: - s_n_llhttp__internal__n_after_start_req_59: { + case s_n_llhttp__internal__n_start_req_59: + s_n_llhttp__internal__n_start_req_59: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_59; + return s_n_llhttp__internal__n_start_req_59; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob51, 7); p = match_seq.current; @@ -5427,46 +5017,46 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_59; + return s_n_llhttp__internal__n_start_req_59; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_52: - s_n_llhttp__internal__n_after_start_req_52: { + case s_n_llhttp__internal__n_start_req_52: + s_n_llhttp__internal__n_start_req_52: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_52; + return s_n_llhttp__internal__n_start_req_52; } switch (*p) { case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_53; + goto s_n_llhttp__internal__n_start_req_53; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_58; + goto s_n_llhttp__internal__n_start_req_58; } case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_59; + goto s_n_llhttp__internal__n_start_req_59; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_61: - s_n_llhttp__internal__n_after_start_req_61: { + case s_n_llhttp__internal__n_start_req_61: + s_n_llhttp__internal__n_start_req_61: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_61; + return s_n_llhttp__internal__n_start_req_61; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob52, 6); p = match_seq.current; @@ -5477,21 +5067,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_61; + return s_n_llhttp__internal__n_start_req_61; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_62: - s_n_llhttp__internal__n_after_start_req_62: { + case s_n_llhttp__internal__n_start_req_62: + s_n_llhttp__internal__n_start_req_62: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_62; + return s_n_llhttp__internal__n_start_req_62; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob53, 3); p = match_seq.current; @@ -5502,42 +5092,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_62; + return s_n_llhttp__internal__n_start_req_62; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_60: - s_n_llhttp__internal__n_after_start_req_60: { + case s_n_llhttp__internal__n_start_req_60: + s_n_llhttp__internal__n_start_req_60: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_60; + return s_n_llhttp__internal__n_start_req_60; } switch (*p) { case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_61; + goto s_n_llhttp__internal__n_start_req_61; } case 'R': { p++; - goto s_n_llhttp__internal__n_after_start_req_62; + goto s_n_llhttp__internal__n_start_req_62; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_65: - s_n_llhttp__internal__n_after_start_req_65: { + case s_n_llhttp__internal__n_start_req_65: + s_n_llhttp__internal__n_start_req_65: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_65; + return s_n_llhttp__internal__n_start_req_65; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob54, 3); p = match_seq.current; @@ -5548,21 +5138,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_65; + return s_n_llhttp__internal__n_start_req_65; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_67: - s_n_llhttp__internal__n_after_start_req_67: { + case s_n_llhttp__internal__n_start_req_67: + s_n_llhttp__internal__n_start_req_67: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_67; + return s_n_llhttp__internal__n_start_req_67; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob55, 2); p = match_seq.current; @@ -5573,21 +5163,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_67; + return s_n_llhttp__internal__n_start_req_67; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_68: - s_n_llhttp__internal__n_after_start_req_68: { + case s_n_llhttp__internal__n_start_req_68: + s_n_llhttp__internal__n_start_req_68: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_68; + return s_n_llhttp__internal__n_start_req_68; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob56, 2); p = match_seq.current; @@ -5598,42 +5188,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_68; + return s_n_llhttp__internal__n_start_req_68; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_66: - s_n_llhttp__internal__n_after_start_req_66: { + case s_n_llhttp__internal__n_start_req_66: + s_n_llhttp__internal__n_start_req_66: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_66; + return s_n_llhttp__internal__n_start_req_66; } switch (*p) { case 'I': { p++; - goto s_n_llhttp__internal__n_after_start_req_67; + goto s_n_llhttp__internal__n_start_req_67; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_68; + goto s_n_llhttp__internal__n_start_req_68; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_69: - s_n_llhttp__internal__n_after_start_req_69: { + case s_n_llhttp__internal__n_start_req_69: + s_n_llhttp__internal__n_start_req_69: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_69; + return s_n_llhttp__internal__n_start_req_69; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob57, 8); p = match_seq.current; @@ -5644,154 +5234,139 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_69; + return s_n_llhttp__internal__n_start_req_69; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_64: - s_n_llhttp__internal__n_after_start_req_64: { + case s_n_llhttp__internal__n_start_req_64: + s_n_llhttp__internal__n_start_req_64: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_64; + return s_n_llhttp__internal__n_start_req_64; } switch (*p) { case 'B': { p++; - goto s_n_llhttp__internal__n_after_start_req_65; + goto s_n_llhttp__internal__n_start_req_65; } case 'L': { p++; - goto s_n_llhttp__internal__n_after_start_req_66; + goto s_n_llhttp__internal__n_start_req_66; } case 'S': { p++; - goto s_n_llhttp__internal__n_after_start_req_69; + goto s_n_llhttp__internal__n_start_req_69; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_63: - s_n_llhttp__internal__n_after_start_req_63: { + case s_n_llhttp__internal__n_start_req_63: + s_n_llhttp__internal__n_start_req_63: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_63; + return s_n_llhttp__internal__n_start_req_63; } switch (*p) { case 'N': { p++; - goto s_n_llhttp__internal__n_after_start_req_64; + goto s_n_llhttp__internal__n_start_req_64; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req: - s_n_llhttp__internal__n_after_start_req: { + case s_n_llhttp__internal__n_start_req: + s_n_llhttp__internal__n_start_req: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req; + return s_n_llhttp__internal__n_start_req; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_1; + goto s_n_llhttp__internal__n_start_req_1; } case 'B': { p++; - goto s_n_llhttp__internal__n_after_start_req_4; + goto s_n_llhttp__internal__n_start_req_4; } case 'C': { p++; - goto s_n_llhttp__internal__n_after_start_req_5; + goto s_n_llhttp__internal__n_start_req_5; } case 'D': { p++; - goto s_n_llhttp__internal__n_after_start_req_10; + goto s_n_llhttp__internal__n_start_req_10; } case 'F': { p++; - goto s_n_llhttp__internal__n_after_start_req_14; + goto s_n_llhttp__internal__n_start_req_14; } case 'G': { p++; - goto s_n_llhttp__internal__n_after_start_req_15; + goto s_n_llhttp__internal__n_start_req_15; } case 'H': { p++; - goto s_n_llhttp__internal__n_after_start_req_18; + goto s_n_llhttp__internal__n_start_req_18; } case 'L': { p++; - goto s_n_llhttp__internal__n_after_start_req_19; + goto s_n_llhttp__internal__n_start_req_19; } case 'M': { p++; - goto s_n_llhttp__internal__n_after_start_req_22; + goto s_n_llhttp__internal__n_start_req_22; } case 'N': { p++; - goto s_n_llhttp__internal__n_after_start_req_31; + goto s_n_llhttp__internal__n_start_req_31; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_32; + goto s_n_llhttp__internal__n_start_req_32; } case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_33; + goto s_n_llhttp__internal__n_start_req_33; } case 'R': { p++; - goto s_n_llhttp__internal__n_after_start_req_46; + goto s_n_llhttp__internal__n_start_req_46; } case 'S': { p++; - goto s_n_llhttp__internal__n_after_start_req_52; + goto s_n_llhttp__internal__n_start_req_52; } case 'T': { p++; - goto s_n_llhttp__internal__n_after_start_req_60; + goto s_n_llhttp__internal__n_start_req_60; } case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_63; + goto s_n_llhttp__internal__n_start_req_63; } default: { - goto s_n_llhttp__internal__n_error_91; + goto s_n_llhttp__internal__n_error_71; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_method_1: - s_n_llhttp__internal__n_span_start_llhttp__on_method_1: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_method_1; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_method; - goto s_n_llhttp__internal__n_after_start_req; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_invoke_llhttp__on_status_complete: s_n_llhttp__internal__n_invoke_llhttp__on_status_complete: { switch (llhttp__on_status_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_headers_start; - case 21: - goto s_n_llhttp__internal__n_pause_20; default: - goto s_n_llhttp__internal__n_error_76; + goto s_n_llhttp__internal__n_header_field_start; } /* UNREACHABLE */; abort(); @@ -5807,7 +5382,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_llhttp__on_status_complete; } default: { - goto s_n_llhttp__internal__n_error_77; + goto s_n_llhttp__internal__n_error_62; } } /* UNREACHABLE */; @@ -5882,251 +5457,92 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_res_status_start; } default: { - goto s_n_llhttp__internal__n_error_78; + goto s_n_llhttp__internal__n_error_63; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_res_status_code_digit_3: - s_n_llhttp__internal__n_res_status_code_digit_3: { + case s_n_llhttp__internal__n_res_status_code: + s_n_llhttp__internal__n_res_status_code: { if (p == endp) { - return s_n_llhttp__internal__n_res_status_code_digit_3; + return s_n_llhttp__internal__n_res_status_code; } switch (*p) { case '0': { p++; match = 0; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '1': { p++; match = 1; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '2': { p++; match = 2; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '3': { p++; match = 3; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '4': { p++; match = 4; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '5': { p++; match = 5; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '6': { p++; match = 6; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '7': { p++; match = 7; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '8': { p++; match = 8; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '9': { p++; match = 9; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } default: { - goto s_n_llhttp__internal__n_error_80; + goto s_n_llhttp__internal__n_res_status_code_otherwise; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_res_status_code_digit_2: - s_n_llhttp__internal__n_res_status_code_digit_2: { + case s_n_llhttp__internal__n_res_http_end: + s_n_llhttp__internal__n_res_http_end: { if (p == endp) { - return s_n_llhttp__internal__n_res_status_code_digit_2; + return s_n_llhttp__internal__n_res_http_end; } switch (*p) { - case '0': { + case ' ': { p++; - match = 0; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '1': { - p++; - match = 1; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '2': { - p++; - match = 2; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '3': { - p++; - match = 3; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '4': { - p++; - match = 4; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '5': { - p++; - match = 5; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '6': { - p++; - match = 6; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '7': { - p++; - match = 7; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '8': { - p++; - match = 8; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '9': { - p++; - match = 9; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - default: { - goto s_n_llhttp__internal__n_error_82; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_res_status_code_digit_1: - s_n_llhttp__internal__n_res_status_code_digit_1: { - if (p == endp) { - return s_n_llhttp__internal__n_res_status_code_digit_1; - } - switch (*p) { - case '0': { - p++; - match = 0; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '1': { - p++; - match = 1; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '2': { - p++; - match = 2; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '3': { - p++; - match = 3; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '4': { - p++; - match = 4; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '5': { - p++; - match = 5; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '6': { - p++; - match = 6; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '7': { - p++; - match = 7; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '8': { - p++; - match = 8; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '9': { - p++; - match = 9; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - default: { - goto s_n_llhttp__internal__n_error_84; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_res_after_version: - s_n_llhttp__internal__n_res_after_version: { - if (p == endp) { - return s_n_llhttp__internal__n_res_after_version; - } - switch (*p) { - case ' ': { - p++; - goto s_n_llhttp__internal__n_invoke_update_status_code; + goto s_n_llhttp__internal__n_invoke_update_status_code; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_64; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1: - s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1: { - switch (llhttp__on_version_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_res_after_version; - case 21: - goto s_n_llhttp__internal__n_pause_21; - default: - goto s_n_llhttp__internal__n_error_75; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_74: - s_n_llhttp__internal__n_error_74: { - state->error = 0x9; - state->reason = "Invalid HTTP version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_86: - s_n_llhttp__internal__n_error_86: { - state->error = 0x9; - state->reason = "Invalid minor version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_res_http_minor: s_n_llhttp__internal__n_res_http_minor: { if (p == endp) { @@ -6184,22 +5600,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_7; + goto s_n_llhttp__internal__n_error_67; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_87: - s_n_llhttp__internal__n_error_87: { - state->error = 0x9; - state->reason = "Expected dot"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_res_http_dot: s_n_llhttp__internal__n_res_http_dot: { if (p == endp) { @@ -6211,22 +5617,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_res_http_minor; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_8; + goto s_n_llhttp__internal__n_error_68; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_88: - s_n_llhttp__internal__n_error_88: { - state->error = 0x9; - state->reason = "Invalid major version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_res_http_major: s_n_llhttp__internal__n_res_http_major: { if (p == endp) { @@ -6284,23 +5680,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_major_1; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_9; + goto s_n_llhttp__internal__n_error_69; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_version_1: - s_n_llhttp__internal__n_span_start_llhttp__on_version_1: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_version_1; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_version; - goto s_n_llhttp__internal__n_res_http_major; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_start_res: s_n_llhttp__internal__n_start_res: { llparse_match_t match_seq; @@ -6313,31 +5698,18 @@ static llparse_state_t llhttp__internal__run( switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_span_start_llhttp__on_version_1; + goto s_n_llhttp__internal__n_res_http_major; } case kMatchPause: { return s_n_llhttp__internal__n_start_res; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_92; + goto s_n_llhttp__internal__n_error_72; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_llhttp__on_method_complete: - s_n_llhttp__internal__n_invoke_llhttp__on_method_complete: { - switch (llhttp__on_method_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_req_first_space_before_url; - case 21: - goto s_n_llhttp__internal__n_pause_19; - default: - goto s_n_llhttp__internal__n_error_1; - } - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_or_res_method_2: s_n_llhttp__internal__n_req_or_res_method_2: { llparse_match_t match_seq; @@ -6357,21 +5729,12 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_or_res_method_2; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_89; + goto s_n_llhttp__internal__n_error_70; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_update_type_1: - s_n_llhttp__internal__n_invoke_update_type_1: { - switch (llhttp__internal__c_update_type_1(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version_1; - } - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_or_res_method_3: s_n_llhttp__internal__n_req_or_res_method_3: { llparse_match_t match_seq; @@ -6384,13 +5747,13 @@ static llparse_state_t llhttp__internal__run( switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_span_end_llhttp__on_method_1; + goto s_n_llhttp__internal__n_invoke_update_type_1; } case kMatchPause: { return s_n_llhttp__internal__n_req_or_res_method_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_89; + goto s_n_llhttp__internal__n_error_70; } } /* UNREACHABLE */; @@ -6411,7 +5774,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_or_res_method_3; } default: { - goto s_n_llhttp__internal__n_error_89; + goto s_n_llhttp__internal__n_error_70; } } /* UNREACHABLE */; @@ -6428,23 +5791,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_or_res_method_1; } default: { - goto s_n_llhttp__internal__n_error_89; + goto s_n_llhttp__internal__n_error_70; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_method: - s_n_llhttp__internal__n_span_start_llhttp__on_method: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_method; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_method; - goto s_n_llhttp__internal__n_req_or_res_method; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_start_req_or_res: s_n_llhttp__internal__n_start_req_or_res: { if (p == endp) { @@ -6452,7 +5804,7 @@ static llparse_state_t llhttp__internal__run( } switch (*p) { case 'H': { - goto s_n_llhttp__internal__n_span_start_llhttp__on_method; + goto s_n_llhttp__internal__n_req_or_res_method; } default: { goto s_n_llhttp__internal__n_invoke_update_type_2; @@ -6465,7 +5817,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_type: { switch (llhttp__internal__c_load_type(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_span_start_llhttp__on_method_1; + goto s_n_llhttp__internal__n_start_req; case 2: goto s_n_llhttp__internal__n_start_res; default: @@ -6474,15 +5826,6 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_update_finish: - s_n_llhttp__internal__n_invoke_update_finish: { - switch (llhttp__internal__c_update_finish(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_invoke_llhttp__on_message_begin; - } - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_start: s_n_llhttp__internal__n_start: { if (p == endp) { @@ -6498,7 +5841,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_start; } default: { - goto s_n_llhttp__internal__n_invoke_load_initial_message_completed; + goto s_n_llhttp__internal__n_invoke_update_finish; } } /* UNREACHABLE */; @@ -6508,7 +5851,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */ abort(); } - s_n_llhttp__internal__n_error_2: { + s_n_llhttp__internal__n_error_1: { state->error = 0x7; state->reason = "Invalid characters in url (strict mode)"; state->error_pos = (const char*) p; @@ -6517,7 +5860,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_69: { + s_n_llhttp__internal__n_error_54: { state->error = 0x7; state->reason = "Invalid characters in url"; state->error_pos = (const char*) p; @@ -6534,23 +5877,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_update_initial_message_completed: { - switch (llhttp__internal__c_update_initial_message_completed(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_invoke_update_finish_2; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_update_content_length: { - switch (llhttp__internal__c_update_content_length(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_invoke_update_initial_message_completed; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_7: { + s_n_llhttp__internal__n_error_4: { state->error = 0x5; state->reason = "Data after `Connection: close`"; state->error_pos = (const char*) p; @@ -6559,10 +5886,10 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_1: { - switch (llhttp__internal__c_test_lenient_flags_1(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags: { + switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_update_initial_message_completed; + goto s_n_llhttp__internal__n_invoke_update_finish_2; default: goto s_n_llhttp__internal__n_closed; } @@ -6572,12 +5899,12 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_update_finish_1: { switch (llhttp__internal__c_update_finish_1(state, p, endp)) { default: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_1; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_11: { + s_n_llhttp__internal__n_pause_5: { state->error = 0x15; state->reason = "on_message_complete pause"; state->error_pos = (const char*) p; @@ -6586,7 +5913,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_28: { + s_n_llhttp__internal__n_error_14: { state->error = 0x12; state->reason = "`on_message_complete` callback error"; state->error_pos = (const char*) p; @@ -6595,7 +5922,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_13: { + s_n_llhttp__internal__n_pause_7: { state->error = 0x15; state->reason = "on_chunk_complete pause"; state->error_pos = (const char*) p; @@ -6604,7 +5931,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_31: { + s_n_llhttp__internal__n_error_17: { state->error = 0x14; state->reason = "`on_chunk_complete` callback error"; state->error_pos = (const char*) p; @@ -6618,14 +5945,14 @@ static llparse_state_t llhttp__internal__run( case 0: goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2; case 21: - goto s_n_llhttp__internal__n_pause_13; + goto s_n_llhttp__internal__n_pause_7; default: - goto s_n_llhttp__internal__n_error_31; + goto s_n_llhttp__internal__n_error_17; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_30: { + s_n_llhttp__internal__n_error_16: { state->error = 0x4; state->reason = "Content-Length can't be present with Transfer-Encoding"; state->error_pos = (const char*) p; @@ -6643,7 +5970,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_8: { + s_n_llhttp__internal__n_error_5: { state->error = 0x12; state->reason = "`on_message_complete` callback error"; state->error_pos = (const char*) p; @@ -6659,12 +5986,12 @@ static llparse_state_t llhttp__internal__run( case 21: goto s_n_llhttp__internal__n_pause_2; default: - goto s_n_llhttp__internal__n_error_8; + goto s_n_llhttp__internal__n_error_5; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_26: { + s_n_llhttp__internal__n_error_12: { state->error = 0xc; state->reason = "Chunk size overflow"; state->error_pos = (const char*) p; @@ -6677,12 +6004,12 @@ static llparse_state_t llhttp__internal__run( state->error = 0x15; state->reason = "on_chunk_complete pause"; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_content_length_1; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_content_length; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_10: { + s_n_llhttp__internal__n_error_7: { state->error = 0x14; state->reason = "`on_chunk_complete` callback error"; state->error_pos = (const char*) p; @@ -6694,16 +6021,16 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete: { switch (llhttp__on_chunk_complete(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_invoke_update_content_length_1; + goto s_n_llhttp__internal__n_invoke_update_content_length; case 21: goto s_n_llhttp__internal__n_pause_3; default: - goto s_n_llhttp__internal__n_error_10; + goto s_n_llhttp__internal__n_error_7; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_11: { + s_n_llhttp__internal__n_error_8: { state->error = 0x2; state->reason = "Expected CRLF after chunk"; state->error_pos = (const char*) p; @@ -6746,7 +6073,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_9: { + s_n_llhttp__internal__n_error_6: { state->error = 0x13; state->reason = "`on_chunk_header` callback error"; state->error_pos = (const char*) p; @@ -6762,12 +6089,12 @@ static llparse_state_t llhttp__internal__run( case 21: goto s_n_llhttp__internal__n_pause_4; default: - goto s_n_llhttp__internal__n_error_9; + goto s_n_llhttp__internal__n_error_6; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_12: { + s_n_llhttp__internal__n_error_9: { state->error = 0x2; state->reason = "Expected LF after chunk size"; state->error_pos = (const char*) p; @@ -6776,317 +6103,36 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_13: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; + s_n_llhttp__internal__n_span_end_llhttp__on_chunk_parameters: { + const unsigned char* start; + int err; + + start = state->_span_pos0; + state->_span_pos0 = NULL; + err = llhttp__on_chunk_parameters(state, start, p); + if (err != 0) { + state->error = err; + state->error_pos = (const char*) (p + 1); + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_size_almost_done; + return s_error; + } + p++; + goto s_n_llhttp__internal__n_chunk_size_almost_done; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_14: { + s_n_llhttp__internal__n_error_10: { state->error = 0x2; - state->reason = "Invalid character in chunk extensions"; + state->reason = "Invalid character in chunk parameters"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_5: { - state->error = 0x15; - state->reason = "on_chunk_extension_name pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_size_almost_done; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_15: { - state->error = 0x22; - state->reason = "`on_chunk_extension_name` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_name(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_6: { - state->error = 0x15; - state->reason = "on_chunk_extension_name pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_extensions; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_16: { - state->error = 0x22; - state->reason = "`on_chunk_extension_name` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_1: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_name(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_7: { - state->error = 0x15; - state->reason = "on_chunk_extension_value pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_size_almost_done; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_18: { - state->error = 0x23; - state->reason = "`on_chunk_extension_value` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_20: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions quote value"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_8: { - state->error = 0x15; - state->reason = "on_chunk_extension_value pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_extension_quoted_value_done; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_19: { - state->error = 0x23; - state->reason = "`on_chunk_extension_value` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_1: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1; - return s_error; - } - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_2: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_21; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_error_21; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_9: { - state->error = 0x15; - state->reason = "on_chunk_extension_value pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_size_otherwise; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_22: { - state->error = 0x23; - state->reason = "`on_chunk_extension_value` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_3: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_4: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_23; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_error_23; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_10: { - state->error = 0x15; - state->reason = "on_chunk_extension_name pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_extension_value; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_17: { - state->error = 0x22; - state->reason = "`on_chunk_extension_name` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_2: { - switch (llhttp__on_chunk_extension_name_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_extension_value; - case 21: - goto s_n_llhttp__internal__n_pause_10; - default: - goto s_n_llhttp__internal__n_error_17; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_2: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_name(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_3: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_name(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_24; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_error_24; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_25: { - state->error = 0xc; - state->reason = "Invalid character in chunk size"; + s_n_llhttp__internal__n_error_11: { + state->error = 0xc; + state->reason = "Invalid character in chunk size"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; @@ -7096,14 +6142,14 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_mul_add_content_length: { switch (llhttp__internal__c_mul_add_content_length(state, p, endp, match)) { case 1: - goto s_n_llhttp__internal__n_error_26; + goto s_n_llhttp__internal__n_error_12; default: goto s_n_llhttp__internal__n_chunk_size; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_27: { + s_n_llhttp__internal__n_error_13: { state->error = 0xc; state->reason = "Invalid character in chunk size"; state->error_pos = (const char*) p; @@ -7137,7 +6183,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_29: { + s_n_llhttp__internal__n_error_15: { state->error = 0xf; state->reason = "Request has invalid `Transfer-Encoding`"; state->error_pos = (const char*) p; @@ -7155,7 +6201,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_6: { + s_n_llhttp__internal__n_error_3: { state->error = 0x12; state->reason = "`on_message_complete` callback error"; state->error_pos = (const char*) p; @@ -7171,7 +6217,7 @@ static llparse_state_t llhttp__internal__run( case 21: goto s_n_llhttp__internal__n_pause; default: - goto s_n_llhttp__internal__n_error_6; + goto s_n_llhttp__internal__n_error_3; } /* UNREACHABLE */; abort(); @@ -7200,7 +6246,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_12: { + s_n_llhttp__internal__n_pause_6: { state->error = 0x15; state->reason = "Paused by on_headers_complete"; state->error_pos = (const char*) p; @@ -7209,7 +6255,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_5: { + s_n_llhttp__internal__n_error_2: { state->error = 0x11; state->reason = "User callback error"; state->error_pos = (const char*) p; @@ -7227,9 +6273,9 @@ static llparse_state_t llhttp__internal__run( case 2: goto s_n_llhttp__internal__n_invoke_update_upgrade; case 21: - goto s_n_llhttp__internal__n_pause_12; + goto s_n_llhttp__internal__n_pause_6; default: - goto s_n_llhttp__internal__n_error_5; + goto s_n_llhttp__internal__n_error_2; } /* UNREACHABLE */; abort(); @@ -7242,10 +6288,10 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_2: { - switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_1: { + switch (llhttp__internal__c_test_lenient_flags_1(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_error_30; + goto s_n_llhttp__internal__n_error_16; default: goto s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete; } @@ -7255,7 +6301,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_test_flags_1: { switch (llhttp__internal__c_test_flags_1(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_2; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_1; default: goto s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete; } @@ -7272,7 +6318,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_32: { + s_n_llhttp__internal__n_error_18: { state->error = 0x2; state->reason = "Expected LF after headers"; state->error_pos = (const char*) p; @@ -7291,16 +6337,16 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_33; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_19; return s_error; } p++; - goto s_n_llhttp__internal__n_error_33; + goto s_n_llhttp__internal__n_error_19; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_3: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_2: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_field_colon_discard_ws; default: @@ -7309,7 +6355,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_36: { + s_n_llhttp__internal__n_error_21: { state->error = 0xa; state->reason = "Invalid header value char"; state->error_pos = (const char*) p; @@ -7318,17 +6364,17 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_5: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_4: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_value_discard_ws; default: - goto s_n_llhttp__internal__n_error_36; + goto s_n_llhttp__internal__n_error_21; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_38: { + s_n_llhttp__internal__n_error_22: { state->error = 0xb; state->reason = "Empty Content-Length"; state->error_pos = (const char*) p; @@ -7337,24 +6383,6 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_14: { - state->error = 0x15; - state->reason = "on_header_value_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_field_start; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_37: { - state->error = 0x1d; - state->reason = "`on_header_value_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_span_end_llhttp__on_header_value: { const unsigned char* start; int err; @@ -7431,14 +6459,14 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_header_state: { switch (llhttp__internal__c_load_header_state(state, p, endp)) { case 2: - goto s_n_llhttp__internal__n_error_38; + goto s_n_llhttp__internal__n_error_22; default: goto s_n_llhttp__internal__n_invoke_load_header_state_1; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_35: { + s_n_llhttp__internal__n_error_20: { state->error = 0xa; state->reason = "Invalid header value char"; state->error_pos = (const char*) p; @@ -7447,17 +6475,17 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_4: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_3: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_value_discard_lws; default: - goto s_n_llhttp__internal__n_error_35; + goto s_n_llhttp__internal__n_error_20; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_39: { + s_n_llhttp__internal__n_error_23: { state->error = 0x2; state->reason = "Expected LF after CR"; state->error_pos = (const char*) p; @@ -7466,12 +6494,12 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_6: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_5: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_value_discard_lws; default: - goto s_n_llhttp__internal__n_error_39; + goto s_n_llhttp__internal__n_error_23; } /* UNREACHABLE */; abort(); @@ -7494,7 +6522,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_40: { + s_n_llhttp__internal__n_error_24: { state->error = 0xa; state->reason = "Unexpected whitespace after header value"; state->error_pos = (const char*) p; @@ -7503,12 +6531,12 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_7: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_6: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_invoke_load_header_state_3; default: - goto s_n_llhttp__internal__n_error_40; + goto s_n_llhttp__internal__n_error_24; } /* UNREACHABLE */; abort(); @@ -7569,7 +6597,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_41: { + s_n_llhttp__internal__n_error_25: { state->error = 0x3; state->reason = "Missing expected LF after header value"; state->error_pos = (const char*) p; @@ -7641,15 +6669,15 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_42; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_26; return s_error; } - goto s_n_llhttp__internal__n_error_42; + goto s_n_llhttp__internal__n_error_26; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_8: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_7: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_value_lenient; default: @@ -7756,10 +6784,10 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_44; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_28; return s_error; } - goto s_n_llhttp__internal__n_error_44; + goto s_n_llhttp__internal__n_error_28; /* UNREACHABLE */; abort(); } @@ -7791,14 +6819,14 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_45; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_29; return s_error; } - goto s_n_llhttp__internal__n_error_45; + goto s_n_llhttp__internal__n_error_29; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_43: { + s_n_llhttp__internal__n_error_27: { state->error = 0x4; state->reason = "Duplicate Content-Length"; state->error_pos = (const char*) p; @@ -7812,7 +6840,7 @@ static llparse_state_t llhttp__internal__run( case 0: goto s_n_llhttp__internal__n_header_value_content_length; default: - goto s_n_llhttp__internal__n_error_43; + goto s_n_llhttp__internal__n_error_27; } /* UNREACHABLE */; abort(); @@ -7827,11 +6855,11 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_47; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_31; return s_error; } p++; - goto s_n_llhttp__internal__n_error_47; + goto s_n_llhttp__internal__n_error_31; /* UNREACHABLE */; abort(); } @@ -7853,16 +6881,16 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_46; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_30; return s_error; } p++; - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_30; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_9: { - switch (llhttp__internal__c_test_lenient_flags_9(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_8: { + switch (llhttp__internal__c_test_lenient_flags_8(state, p, endp)) { case 0: goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_7; default: @@ -7874,7 +6902,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_type_1: { switch (llhttp__internal__c_load_type(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_9; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_8; default: goto s_n_llhttp__internal__n_header_value_te_chunked; } @@ -7905,8 +6933,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_10: { - switch (llhttp__internal__c_test_lenient_flags_9(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_9: { + switch (llhttp__internal__c_test_lenient_flags_8(state, p, endp)) { case 0: goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_8; default: @@ -7918,7 +6946,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_type_2: { switch (llhttp__internal__c_load_type(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_10; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_9; default: goto s_n_llhttp__internal__n_invoke_or_flags_17; } @@ -7967,24 +6995,6 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_15: { - state->error = 0x15; - state->reason = "on_header_field_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_value_discard_ws; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_34: { - state->error = 0x1c; - state->reason = "`on_header_field_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_span_end_llhttp__on_header_field_1: { const unsigned char* start; int err; @@ -8021,7 +7031,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_48: { + s_n_llhttp__internal__n_error_32: { state->error = 0xa; state->reason = "Invalid header token"; state->error_pos = (const char*) p; @@ -8054,51 +7064,10 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_4: { - state->error = 0x1e; - state->reason = "Unexpected space after start line"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_test_lenient_flags: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { - case 1: - goto s_n_llhttp__internal__n_header_field_start; - default: - goto s_n_llhttp__internal__n_error_4; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_16: { - state->error = 0x15; - state->reason = "on_url_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_headers_start; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_3: { - state->error = 0x1a; - state->reason = "`on_url_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_invoke_llhttp__on_url_complete: { switch (llhttp__on_url_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_headers_start; - case 21: - goto s_n_llhttp__internal__n_pause_16; default: - goto s_n_llhttp__internal__n_error_3; + goto s_n_llhttp__internal__n_header_field_start; } /* UNREACHABLE */; abort(); @@ -8136,7 +7105,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_49: { + s_n_llhttp__internal__n_error_33: { state->error = 0x7; state->reason = "Expected CRLF"; state->error_pos = (const char*) p; @@ -8162,7 +7131,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_55: { + s_n_llhttp__internal__n_error_38: { state->error = 0x17; state->reason = "Pause on PRI/Upgrade"; state->error_pos = (const char*) p; @@ -8171,7 +7140,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_56: { + s_n_llhttp__internal__n_error_39: { state->error = 0x9; state->reason = "Expected HTTP/2 Connection Preface"; state->error_pos = (const char*) p; @@ -8180,7 +7149,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_54: { + s_n_llhttp__internal__n_error_37: { state->error = 0x9; state->reason = "Expected CRLF after version"; state->error_pos = (const char*) p; @@ -8189,90 +7158,84 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_17: { - state->error = 0x15; - state->reason = "on_version_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_load_method_1; - return s_error; + s_n_llhttp__internal__n_invoke_load_method_1: { + switch (llhttp__internal__c_load_method(state, p, endp)) { + case 34: + goto s_n_llhttp__internal__n_req_pri_upgrade; + default: + goto s_n_llhttp__internal__n_req_http_complete; + } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_53: { - state->error = 0x21; - state->reason = "`on_version_complete` callback error"; + s_n_llhttp__internal__n_error_36: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_1: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_version_complete; - return s_error; - } - goto s_n_llhttp__internal__n_invoke_llhttp__on_version_complete; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_version: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_52; - return s_error; - } - goto s_n_llhttp__internal__n_error_52; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_invoke_load_http_minor: { switch (llhttp__internal__c_load_http_minor(state, p, endp)) { case 9: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version; + goto s_n_llhttp__internal__n_error_36; } /* UNREACHABLE */; abort(); } + s_n_llhttp__internal__n_error_40: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; + /* UNREACHABLE */; + abort(); + } s_n_llhttp__internal__n_invoke_load_http_minor_1: { switch (llhttp__internal__c_load_http_minor(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; case 1: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version; + goto s_n_llhttp__internal__n_error_40; } /* UNREACHABLE */; abort(); } + s_n_llhttp__internal__n_error_41: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; + /* UNREACHABLE */; + abort(); + } s_n_llhttp__internal__n_invoke_load_http_minor_2: { switch (llhttp__internal__c_load_http_minor(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version; + goto s_n_llhttp__internal__n_error_41; } /* UNREACHABLE */; abort(); } + s_n_llhttp__internal__n_error_35: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; + /* UNREACHABLE */; + abort(); + } s_n_llhttp__internal__n_invoke_load_http_major: { switch (llhttp__internal__c_load_http_major(state, p, endp)) { case 0: @@ -8282,15 +7245,15 @@ static llparse_state_t llhttp__internal__run( case 2: goto s_n_llhttp__internal__n_invoke_load_http_minor_2; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version; + goto s_n_llhttp__internal__n_error_35; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_11: { - switch (llhttp__internal__c_test_lenient_flags_11(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_10: { + switch (llhttp__internal__c_test_lenient_flags_10(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; default: goto s_n_llhttp__internal__n_invoke_load_http_major; } @@ -8300,42 +7263,26 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_store_http_minor: { switch (llhttp__internal__c_store_http_minor(state, p, endp, match)) { default: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_11; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_10; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_2: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_57; - return s_error; - } - goto s_n_llhttp__internal__n_error_57; + s_n_llhttp__internal__n_error_42: { + state->error = 0x9; + state->reason = "Invalid minor version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_3: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_58; - return s_error; - } - goto s_n_llhttp__internal__n_error_58; + s_n_llhttp__internal__n_error_43: { + state->error = 0x9; + state->reason = "Expected dot"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } @@ -8347,24 +7294,16 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_4: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_59; - return s_error; - } - goto s_n_llhttp__internal__n_error_59; + s_n_llhttp__internal__n_error_44: { + state->error = 0x9; + state->reason = "Invalid major version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_51: { + s_n_llhttp__internal__n_error_34: { state->error = 0x8; state->reason = "Invalid method for HTTP/x.x request"; state->error_pos = (const char*) p; @@ -8376,82 +7315,82 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_method: { switch (llhttp__internal__c_load_method(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 1: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 2: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 3: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 4: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 5: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 6: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 7: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 8: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 9: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 10: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 11: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 12: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 13: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 14: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 15: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 16: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 17: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 18: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 19: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 20: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 21: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 22: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 23: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 24: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 25: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 26: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 27: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 28: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 29: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 30: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 31: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 32: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 33: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 34: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; default: - goto s_n_llhttp__internal__n_error_51; + goto s_n_llhttp__internal__n_error_34; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_62: { + s_n_llhttp__internal__n_error_47: { state->error = 0x8; state->reason = "Expected HTTP/"; state->error_pos = (const char*) p; @@ -8460,7 +7399,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_60: { + s_n_llhttp__internal__n_error_45: { state->error = 0x8; state->reason = "Expected SOURCE method for ICE/x.x request"; state->error_pos = (const char*) p; @@ -8472,14 +7411,14 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_method_2: { switch (llhttp__internal__c_load_method(state, p, endp)) { case 33: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; default: - goto s_n_llhttp__internal__n_error_60; + goto s_n_llhttp__internal__n_error_45; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_61: { + s_n_llhttp__internal__n_error_46: { state->error = 0x8; state->reason = "Invalid method for RTSP/x.x request"; state->error_pos = (const char*) p; @@ -8491,65 +7430,43 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_method_3: { switch (llhttp__internal__c_load_method(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 3: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 6: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 35: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 36: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 37: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 38: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 39: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 40: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 41: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 42: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 43: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 44: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 45: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; default: - goto s_n_llhttp__internal__n_error_61; + goto s_n_llhttp__internal__n_error_46; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_18: { - state->error = 0x15; - state->reason = "on_url_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_req_http_start; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_50: { - state->error = 0x1a; - state->reason = "`on_url_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_invoke_llhttp__on_url_complete_1: { switch (llhttp__on_url_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_req_http_start; - case 21: - goto s_n_llhttp__internal__n_pause_18; default: - goto s_n_llhttp__internal__n_error_50; + goto s_n_llhttp__internal__n_req_http_start; } /* UNREACHABLE */; abort(); @@ -8622,7 +7539,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_63: { + s_n_llhttp__internal__n_error_48: { state->error = 0x7; state->reason = "Invalid char in url fragment start"; state->error_pos = (const char*) p; @@ -8682,7 +7599,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_64: { + s_n_llhttp__internal__n_error_49: { state->error = 0x7; state->reason = "Invalid char in url query"; state->error_pos = (const char*) p; @@ -8691,7 +7608,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_65: { + s_n_llhttp__internal__n_error_50: { state->error = 0x7; state->reason = "Invalid char in url path"; state->error_pos = (const char*) p; @@ -8802,7 +7719,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_66: { + s_n_llhttp__internal__n_error_51: { state->error = 0x7; state->reason = "Double @ in url"; state->error_pos = (const char*) p; @@ -8811,7 +7728,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_67: { + s_n_llhttp__internal__n_error_52: { state->error = 0x7; state->reason = "Unexpected char in url server"; state->error_pos = (const char*) p; @@ -8820,7 +7737,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_68: { + s_n_llhttp__internal__n_error_53: { state->error = 0x7; state->reason = "Unexpected char in url server"; state->error_pos = (const char*) p; @@ -8829,7 +7746,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_70: { + s_n_llhttp__internal__n_error_55: { state->error = 0x7; state->reason = "Unexpected char in url schema"; state->error_pos = (const char*) p; @@ -8838,7 +7755,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_71: { + s_n_llhttp__internal__n_error_56: { state->error = 0x7; state->reason = "Unexpected char in url schema"; state->error_pos = (const char*) p; @@ -8847,7 +7764,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_72: { + s_n_llhttp__internal__n_error_57: { state->error = 0x7; state->reason = "Unexpected start char in url"; state->error_pos = (const char*) p; @@ -8866,7 +7783,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_73: { + s_n_llhttp__internal__n_error_58: { state->error = 0x6; state->reason = "Expected space after method"; state->error_pos = (const char*) p; @@ -8875,50 +7792,15 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_22: { - state->error = 0x15; - state->reason = "on_method_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_req_first_space_before_url; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_90: { - state->error = 0x20; - state->reason = "`on_method_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_method_2: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_method(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1; - return s_error; - } - goto s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_invoke_store_method_1: { switch (llhttp__internal__c_store_method(state, p, endp, match)) { default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_method_2; + goto s_n_llhttp__internal__n_req_first_space_before_url; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_91: { + s_n_llhttp__internal__n_error_71: { state->error = 0x6; state->reason = "Invalid method encountered"; state->error_pos = (const char*) p; @@ -8927,52 +7809,26 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_83: { - state->error = 0xd; - state->reason = "Invalid status code"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_81: { - state->error = 0xd; - state->reason = "Invalid status code"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_79: { + s_n_llhttp__internal__n_error_61: { state->error = 0xd; - state->reason = "Invalid status code"; + state->reason = "Response overflow"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_20: { - state->error = 0x15; - state->reason = "on_status_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_headers_start; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_76: { - state->error = 0x1b; - state->reason = "`on_status_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; + s_n_llhttp__internal__n_invoke_mul_add_status_code: { + switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) { + case 1: + goto s_n_llhttp__internal__n_error_61; + default: + goto s_n_llhttp__internal__n_res_status_code; + } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_77: { + s_n_llhttp__internal__n_error_62: { state->error = 0x2; state->reason = "Expected LF after CR"; state->error_pos = (const char*) p; @@ -9017,7 +7873,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_78: { + s_n_llhttp__internal__n_error_63: { state->error = 0xd; state->reason = "Invalid response status"; state->error_pos = (const char*) p; @@ -9026,161 +7882,88 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_mul_add_status_code_2: { - switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) { - case 1: - goto s_n_llhttp__internal__n_error_79; + s_n_llhttp__internal__n_invoke_update_status_code: { + switch (llhttp__internal__c_update_status_code(state, p, endp)) { default: - goto s_n_llhttp__internal__n_res_status_code_otherwise; + goto s_n_llhttp__internal__n_res_status_code; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_80: { - state->error = 0xd; - state->reason = "Invalid status code"; + s_n_llhttp__internal__n_error_64: { + state->error = 0x9; + state->reason = "Expected space after version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_mul_add_status_code_1: { - switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) { - case 1: - goto s_n_llhttp__internal__n_error_81; - default: - goto s_n_llhttp__internal__n_res_status_code_digit_3; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_82: { - state->error = 0xd; - state->reason = "Invalid status code"; + s_n_llhttp__internal__n_error_60: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_mul_add_status_code: { - switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) { - case 1: - goto s_n_llhttp__internal__n_error_83; + s_n_llhttp__internal__n_invoke_load_http_minor_3: { + switch (llhttp__internal__c_load_http_minor(state, p, endp)) { + case 9: + goto s_n_llhttp__internal__n_res_http_end; default: - goto s_n_llhttp__internal__n_res_status_code_digit_2; + goto s_n_llhttp__internal__n_error_60; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_84: { - state->error = 0xd; - state->reason = "Invalid status code"; + s_n_llhttp__internal__n_error_65: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_update_status_code: { - switch (llhttp__internal__c_update_status_code(state, p, endp)) { + s_n_llhttp__internal__n_invoke_load_http_minor_4: { + switch (llhttp__internal__c_load_http_minor(state, p, endp)) { + case 0: + goto s_n_llhttp__internal__n_res_http_end; + case 1: + goto s_n_llhttp__internal__n_res_http_end; default: - goto s_n_llhttp__internal__n_res_status_code_digit_1; + goto s_n_llhttp__internal__n_error_65; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_85: { + s_n_llhttp__internal__n_error_66: { state->error = 0x9; - state->reason = "Expected space after version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_21: { - state->error = 0x15; - state->reason = "on_version_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_res_after_version; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_75: { - state->error = 0x21; - state->reason = "`on_version_complete` callback error"; + state->reason = "Invalid HTTP version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_6: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1; - return s_error; - } - goto s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_version_5: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_74; - return s_error; - } - goto s_n_llhttp__internal__n_error_74; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_load_http_minor_3: { - switch (llhttp__internal__c_load_http_minor(state, p, endp)) { - case 9: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; - default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_5; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_load_http_minor_4: { + s_n_llhttp__internal__n_invoke_load_http_minor_5: { switch (llhttp__internal__c_load_http_minor(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; - case 1: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; + goto s_n_llhttp__internal__n_res_http_end; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_5; + goto s_n_llhttp__internal__n_error_66; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_load_http_minor_5: { - switch (llhttp__internal__c_load_http_minor(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; - default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_5; - } + s_n_llhttp__internal__n_error_59: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } @@ -9193,15 +7976,15 @@ static llparse_state_t llhttp__internal__run( case 2: goto s_n_llhttp__internal__n_invoke_load_http_minor_5; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_5; + goto s_n_llhttp__internal__n_error_59; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_12: { - switch (llhttp__internal__c_test_lenient_flags_11(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_11: { + switch (llhttp__internal__c_test_lenient_flags_10(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; + goto s_n_llhttp__internal__n_res_http_end; default: goto s_n_llhttp__internal__n_invoke_load_http_major_1; } @@ -9211,42 +7994,26 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_store_http_minor_1: { switch (llhttp__internal__c_store_http_minor(state, p, endp, match)) { default: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_12; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_11; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_7: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_86; - return s_error; - } - goto s_n_llhttp__internal__n_error_86; + s_n_llhttp__internal__n_error_67: { + state->error = 0x9; + state->reason = "Invalid minor version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_8: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_87; - return s_error; - } - goto s_n_llhttp__internal__n_error_87; + s_n_llhttp__internal__n_error_68: { + state->error = 0x9; + state->reason = "Expected dot"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } @@ -9258,71 +8025,28 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_9: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_88; - return s_error; - } - goto s_n_llhttp__internal__n_error_88; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_92: { - state->error = 0x8; - state->reason = "Expected HTTP/"; + s_n_llhttp__internal__n_error_69: { + state->error = 0x9; + state->reason = "Invalid major version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_19: { - state->error = 0x15; - state->reason = "on_method_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_req_first_space_before_url; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_1: { - state->error = 0x20; - state->reason = "`on_method_complete` callback error"; + s_n_llhttp__internal__n_error_72: { + state->error = 0x8; + state->reason = "Expected HTTP/"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_method: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_method(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_method_complete; - return s_error; - } - goto s_n_llhttp__internal__n_invoke_llhttp__on_method_complete; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_invoke_update_type: { switch (llhttp__internal__c_update_type(state, p, endp)) { default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_method; + goto s_n_llhttp__internal__n_req_first_space_before_url; } /* UNREACHABLE */; abort(); @@ -9335,7 +8059,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_89: { + s_n_llhttp__internal__n_error_70: { state->error = 0x8; state->reason = "Invalid word encountered"; state->error_pos = (const char*) p; @@ -9344,32 +8068,23 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_method_1: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_method(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_type_1; - return s_error; + s_n_llhttp__internal__n_invoke_update_type_1: { + switch (llhttp__internal__c_update_type_1(state, p, endp)) { + default: + goto s_n_llhttp__internal__n_res_http_major; } - goto s_n_llhttp__internal__n_invoke_update_type_1; /* UNREACHABLE */; abort(); } s_n_llhttp__internal__n_invoke_update_type_2: { switch (llhttp__internal__c_update_type(state, p, endp)) { default: - goto s_n_llhttp__internal__n_span_start_llhttp__on_method_1; + goto s_n_llhttp__internal__n_start_req; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_23: { + s_n_llhttp__internal__n_pause_8: { state->error = 0x15; state->reason = "on_message_begin pause"; state->error_pos = (const char*) p; @@ -9392,50 +8107,18 @@ static llparse_state_t llhttp__internal__run( case 0: goto s_n_llhttp__internal__n_invoke_load_type; case 21: - goto s_n_llhttp__internal__n_pause_23; + goto s_n_llhttp__internal__n_pause_8; default: goto s_n_llhttp__internal__n_error; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_24: { - state->error = 0x15; - state->reason = "on_reset pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_finish; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_93: { - state->error = 0x1f; - state->reason = "`on_reset` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_llhttp__on_reset: { - switch (llhttp__on_reset(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_invoke_update_finish; - case 21: - goto s_n_llhttp__internal__n_pause_24; - default: - goto s_n_llhttp__internal__n_error_93; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_load_initial_message_completed: { - switch (llhttp__internal__c_load_initial_message_completed(state, p, endp)) { - case 1: - goto s_n_llhttp__internal__n_invoke_llhttp__on_reset; - default: - goto s_n_llhttp__internal__n_invoke_update_finish; - } + s_n_llhttp__internal__n_invoke_update_finish: { + switch (llhttp__internal__c_update_finish(state, p, endp)) { + default: + goto s_n_llhttp__internal__n_invoke_llhttp__on_message_begin; + } /* UNREACHABLE */; abort(); } @@ -9823,25 +8506,13 @@ enum llparse_state_e { s_n_llhttp__internal__n_span_start_llhttp__on_body, s_n_llhttp__internal__n_invoke_is_equal_content_length, s_n_llhttp__internal__n_chunk_size_almost_done, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete, - s_n_llhttp__internal__n_chunk_extension_quoted_value_done, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1, - s_n_llhttp__internal__n_error_17, - s_n_llhttp__internal__n_chunk_extension_quoted_value, - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2, - s_n_llhttp__internal__n_error_19, - s_n_llhttp__internal__n_chunk_extension_value, - s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value, - s_n_llhttp__internal__n_error_20, - s_n_llhttp__internal__n_chunk_extension_name, - s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name, - s_n_llhttp__internal__n_chunk_extensions, + s_n_llhttp__internal__n_chunk_parameters, + s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters, + s_n_llhttp__internal__n_chunk_parameters_ows, s_n_llhttp__internal__n_chunk_size_otherwise, s_n_llhttp__internal__n_chunk_size, s_n_llhttp__internal__n_chunk_size_digit, - s_n_llhttp__internal__n_invoke_update_content_length_1, + s_n_llhttp__internal__n_invoke_update_content_length, s_n_llhttp__internal__n_consume_content_length_1, s_n_llhttp__internal__n_span_start_llhttp__on_body_1, s_n_llhttp__internal__n_eof, @@ -9849,7 +8520,7 @@ enum llparse_state_e { s_n_llhttp__internal__n_invoke_llhttp__after_headers_complete, s_n_llhttp__internal__n_headers_almost_done, s_n_llhttp__internal__n_header_field_colon_discard_ws, - s_n_llhttp__internal__n_error_28, + s_n_llhttp__internal__n_error_14, s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete, s_n_llhttp__internal__n_span_start_llhttp__on_header_value, s_n_llhttp__internal__n_header_value_discard_lws, @@ -9857,7 +8528,7 @@ enum llparse_state_e { s_n_llhttp__internal__n_header_value_lws, s_n_llhttp__internal__n_header_value_almost_done, s_n_llhttp__internal__n_header_value_lenient, - s_n_llhttp__internal__n_error_37, + s_n_llhttp__internal__n_error_21, s_n_llhttp__internal__n_header_value_otherwise, s_n_llhttp__internal__n_header_value_connection_token, s_n_llhttp__internal__n_header_value_connection_ws, @@ -9865,12 +8536,12 @@ enum llparse_state_e { s_n_llhttp__internal__n_header_value_connection_2, s_n_llhttp__internal__n_header_value_connection_3, s_n_llhttp__internal__n_header_value_connection, - s_n_llhttp__internal__n_error_39, - s_n_llhttp__internal__n_error_40, + s_n_llhttp__internal__n_error_23, + s_n_llhttp__internal__n_error_24, s_n_llhttp__internal__n_header_value_content_length_ws, s_n_llhttp__internal__n_header_value_content_length, - s_n_llhttp__internal__n_error_42, - s_n_llhttp__internal__n_error_41, + s_n_llhttp__internal__n_error_26, + s_n_llhttp__internal__n_error_25, s_n_llhttp__internal__n_header_value_te_token_ows, s_n_llhttp__internal__n_header_value, s_n_llhttp__internal__n_header_value_te_token, @@ -9892,22 +8563,14 @@ enum llparse_state_e { s_n_llhttp__internal__n_header_field, s_n_llhttp__internal__n_span_start_llhttp__on_header_field, s_n_llhttp__internal__n_header_field_start, - s_n_llhttp__internal__n_headers_start, s_n_llhttp__internal__n_url_skip_to_http09, s_n_llhttp__internal__n_url_skip_lf_to_http09, s_n_llhttp__internal__n_req_pri_upgrade, s_n_llhttp__internal__n_req_http_complete_1, s_n_llhttp__internal__n_req_http_complete, - s_n_llhttp__internal__n_invoke_load_method_1, - s_n_llhttp__internal__n_invoke_llhttp__on_version_complete, - s_n_llhttp__internal__n_error_47, - s_n_llhttp__internal__n_error_52, s_n_llhttp__internal__n_req_http_minor, - s_n_llhttp__internal__n_error_53, s_n_llhttp__internal__n_req_http_dot, - s_n_llhttp__internal__n_error_54, s_n_llhttp__internal__n_req_http_major, - s_n_llhttp__internal__n_span_start_llhttp__on_version, s_n_llhttp__internal__n_req_http_start_1, s_n_llhttp__internal__n_req_http_start_2, s_n_llhttp__internal__n_req_http_start_3, @@ -9932,124 +8595,102 @@ enum llparse_state_e { s_n_llhttp__internal__n_span_start_llhttp__on_url, s_n_llhttp__internal__n_req_spaces_before_url, s_n_llhttp__internal__n_req_first_space_before_url, - s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1, - s_n_llhttp__internal__n_after_start_req_2, - s_n_llhttp__internal__n_after_start_req_3, - s_n_llhttp__internal__n_after_start_req_1, - s_n_llhttp__internal__n_after_start_req_4, - s_n_llhttp__internal__n_after_start_req_6, - s_n_llhttp__internal__n_after_start_req_8, - s_n_llhttp__internal__n_after_start_req_9, - s_n_llhttp__internal__n_after_start_req_7, - s_n_llhttp__internal__n_after_start_req_5, - s_n_llhttp__internal__n_after_start_req_12, - s_n_llhttp__internal__n_after_start_req_13, - s_n_llhttp__internal__n_after_start_req_11, - s_n_llhttp__internal__n_after_start_req_10, - s_n_llhttp__internal__n_after_start_req_14, - s_n_llhttp__internal__n_after_start_req_17, - s_n_llhttp__internal__n_after_start_req_16, - s_n_llhttp__internal__n_after_start_req_15, - s_n_llhttp__internal__n_after_start_req_18, - s_n_llhttp__internal__n_after_start_req_20, - s_n_llhttp__internal__n_after_start_req_21, - s_n_llhttp__internal__n_after_start_req_19, - s_n_llhttp__internal__n_after_start_req_23, - s_n_llhttp__internal__n_after_start_req_24, - s_n_llhttp__internal__n_after_start_req_26, - s_n_llhttp__internal__n_after_start_req_28, - s_n_llhttp__internal__n_after_start_req_29, - s_n_llhttp__internal__n_after_start_req_27, - s_n_llhttp__internal__n_after_start_req_25, - s_n_llhttp__internal__n_after_start_req_30, - s_n_llhttp__internal__n_after_start_req_22, - s_n_llhttp__internal__n_after_start_req_31, - s_n_llhttp__internal__n_after_start_req_32, - s_n_llhttp__internal__n_after_start_req_35, - s_n_llhttp__internal__n_after_start_req_36, - s_n_llhttp__internal__n_after_start_req_34, - s_n_llhttp__internal__n_after_start_req_37, - s_n_llhttp__internal__n_after_start_req_38, - s_n_llhttp__internal__n_after_start_req_42, - s_n_llhttp__internal__n_after_start_req_43, - s_n_llhttp__internal__n_after_start_req_41, - s_n_llhttp__internal__n_after_start_req_40, - s_n_llhttp__internal__n_after_start_req_39, - s_n_llhttp__internal__n_after_start_req_45, - s_n_llhttp__internal__n_after_start_req_44, - s_n_llhttp__internal__n_after_start_req_33, - s_n_llhttp__internal__n_after_start_req_48, - s_n_llhttp__internal__n_after_start_req_49, - s_n_llhttp__internal__n_after_start_req_50, - s_n_llhttp__internal__n_after_start_req_51, - s_n_llhttp__internal__n_after_start_req_47, - s_n_llhttp__internal__n_after_start_req_46, - s_n_llhttp__internal__n_after_start_req_54, - s_n_llhttp__internal__n_after_start_req_56, - s_n_llhttp__internal__n_after_start_req_57, - s_n_llhttp__internal__n_after_start_req_55, - s_n_llhttp__internal__n_after_start_req_53, - s_n_llhttp__internal__n_after_start_req_58, - s_n_llhttp__internal__n_after_start_req_59, - s_n_llhttp__internal__n_after_start_req_52, - s_n_llhttp__internal__n_after_start_req_61, - s_n_llhttp__internal__n_after_start_req_62, - s_n_llhttp__internal__n_after_start_req_60, - s_n_llhttp__internal__n_after_start_req_65, - s_n_llhttp__internal__n_after_start_req_67, - s_n_llhttp__internal__n_after_start_req_68, - s_n_llhttp__internal__n_after_start_req_66, - s_n_llhttp__internal__n_after_start_req_69, - s_n_llhttp__internal__n_after_start_req_64, - s_n_llhttp__internal__n_after_start_req_63, - s_n_llhttp__internal__n_after_start_req, - s_n_llhttp__internal__n_span_start_llhttp__on_method_1, + s_n_llhttp__internal__n_start_req_2, + s_n_llhttp__internal__n_start_req_3, + s_n_llhttp__internal__n_start_req_1, + s_n_llhttp__internal__n_start_req_4, + s_n_llhttp__internal__n_start_req_6, + s_n_llhttp__internal__n_start_req_8, + s_n_llhttp__internal__n_start_req_9, + s_n_llhttp__internal__n_start_req_7, + s_n_llhttp__internal__n_start_req_5, + s_n_llhttp__internal__n_start_req_12, + s_n_llhttp__internal__n_start_req_13, + s_n_llhttp__internal__n_start_req_11, + s_n_llhttp__internal__n_start_req_10, + s_n_llhttp__internal__n_start_req_14, + s_n_llhttp__internal__n_start_req_17, + s_n_llhttp__internal__n_start_req_16, + s_n_llhttp__internal__n_start_req_15, + s_n_llhttp__internal__n_start_req_18, + s_n_llhttp__internal__n_start_req_20, + s_n_llhttp__internal__n_start_req_21, + s_n_llhttp__internal__n_start_req_19, + s_n_llhttp__internal__n_start_req_23, + s_n_llhttp__internal__n_start_req_24, + s_n_llhttp__internal__n_start_req_26, + s_n_llhttp__internal__n_start_req_28, + s_n_llhttp__internal__n_start_req_29, + s_n_llhttp__internal__n_start_req_27, + s_n_llhttp__internal__n_start_req_25, + s_n_llhttp__internal__n_start_req_30, + s_n_llhttp__internal__n_start_req_22, + s_n_llhttp__internal__n_start_req_31, + s_n_llhttp__internal__n_start_req_32, + s_n_llhttp__internal__n_start_req_35, + s_n_llhttp__internal__n_start_req_36, + s_n_llhttp__internal__n_start_req_34, + s_n_llhttp__internal__n_start_req_37, + s_n_llhttp__internal__n_start_req_38, + s_n_llhttp__internal__n_start_req_42, + s_n_llhttp__internal__n_start_req_43, + s_n_llhttp__internal__n_start_req_41, + s_n_llhttp__internal__n_start_req_40, + s_n_llhttp__internal__n_start_req_39, + s_n_llhttp__internal__n_start_req_45, + s_n_llhttp__internal__n_start_req_44, + s_n_llhttp__internal__n_start_req_33, + s_n_llhttp__internal__n_start_req_48, + s_n_llhttp__internal__n_start_req_49, + s_n_llhttp__internal__n_start_req_50, + s_n_llhttp__internal__n_start_req_51, + s_n_llhttp__internal__n_start_req_47, + s_n_llhttp__internal__n_start_req_46, + s_n_llhttp__internal__n_start_req_54, + s_n_llhttp__internal__n_start_req_56, + s_n_llhttp__internal__n_start_req_57, + s_n_llhttp__internal__n_start_req_55, + s_n_llhttp__internal__n_start_req_53, + s_n_llhttp__internal__n_start_req_58, + s_n_llhttp__internal__n_start_req_59, + s_n_llhttp__internal__n_start_req_52, + s_n_llhttp__internal__n_start_req_61, + s_n_llhttp__internal__n_start_req_62, + s_n_llhttp__internal__n_start_req_60, + s_n_llhttp__internal__n_start_req_65, + s_n_llhttp__internal__n_start_req_67, + s_n_llhttp__internal__n_start_req_68, + s_n_llhttp__internal__n_start_req_66, + s_n_llhttp__internal__n_start_req_69, + s_n_llhttp__internal__n_start_req_64, + s_n_llhttp__internal__n_start_req_63, + s_n_llhttp__internal__n_start_req, s_n_llhttp__internal__n_invoke_llhttp__on_status_complete, s_n_llhttp__internal__n_res_line_almost_done, s_n_llhttp__internal__n_res_status, s_n_llhttp__internal__n_span_start_llhttp__on_status, s_n_llhttp__internal__n_res_status_start, s_n_llhttp__internal__n_res_status_code_otherwise, - s_n_llhttp__internal__n_res_status_code_digit_3, - s_n_llhttp__internal__n_res_status_code_digit_2, - s_n_llhttp__internal__n_res_status_code_digit_1, - s_n_llhttp__internal__n_res_after_version, - s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1, - s_n_llhttp__internal__n_error_69, - s_n_llhttp__internal__n_error_80, + s_n_llhttp__internal__n_res_status_code, + s_n_llhttp__internal__n_res_http_end, s_n_llhttp__internal__n_res_http_minor, - s_n_llhttp__internal__n_error_81, s_n_llhttp__internal__n_res_http_dot, - s_n_llhttp__internal__n_error_82, s_n_llhttp__internal__n_res_http_major, - s_n_llhttp__internal__n_span_start_llhttp__on_version_1, s_n_llhttp__internal__n_start_res, - s_n_llhttp__internal__n_invoke_llhttp__on_method_complete, s_n_llhttp__internal__n_req_or_res_method_2, - s_n_llhttp__internal__n_invoke_update_type_1, s_n_llhttp__internal__n_req_or_res_method_3, s_n_llhttp__internal__n_req_or_res_method_1, s_n_llhttp__internal__n_req_or_res_method, - s_n_llhttp__internal__n_span_start_llhttp__on_method, s_n_llhttp__internal__n_start_req_or_res, s_n_llhttp__internal__n_invoke_load_type, - s_n_llhttp__internal__n_invoke_update_finish, s_n_llhttp__internal__n_start, }; typedef enum llparse_state_e llparse_state_t; -int llhttp__on_method( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__on_url( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__on_version( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__on_header_field( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); @@ -10062,11 +8703,7 @@ int llhttp__on_body( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__on_chunk_extension_name( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - -int llhttp__on_chunk_extension_value( +int llhttp__on_chunk_parameters( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); @@ -10074,17 +8711,6 @@ int llhttp__on_status( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__internal__c_load_initial_message_completed( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - return state->initial_message_completed; -} - -int llhttp__on_reset( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__internal__c_update_finish( llhttp__internal_t* state, const unsigned char* p, @@ -10113,10 +8739,6 @@ int llhttp__internal__c_store_method( return 0; } -int llhttp__on_method_complete( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__internal__c_is_equal_method( llhttp__internal_t* state, const unsigned char* p, @@ -10144,13 +8766,6 @@ int llhttp__on_url_complete( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__internal__c_test_lenient_flags( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - return (state->lenient_flags & 1) == 1; -} - int llhttp__internal__c_test_flags( llhttp__internal_t* state, const unsigned char* p, @@ -10177,22 +8792,6 @@ int llhttp__after_message_complete( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); -int llhttp__internal__c_update_content_length( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - state->content_length = 0; - return 0; -} - -int llhttp__internal__c_update_initial_message_completed( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - state->initial_message_completed = 1; - return 0; -} - int llhttp__internal__c_update_finish_1( llhttp__internal_t* state, const unsigned char* p, @@ -10201,7 +8800,7 @@ int llhttp__internal__c_update_finish_1( return 0; } -int llhttp__internal__c_test_lenient_flags_1( +int llhttp__internal__c_test_lenient_flags( llhttp__internal_t* state, const unsigned char* p, const unsigned char* endp) { @@ -10215,7 +8814,7 @@ int llhttp__internal__c_test_flags_1( return (state->flags & 544) == 544; } -int llhttp__internal__c_test_lenient_flags_2( +int llhttp__internal__c_test_lenient_flags_1( llhttp__internal_t* state, const unsigned char* p, const unsigned char* endp) { @@ -10234,6 +8833,14 @@ int llhttp__after_headers_complete( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); +int llhttp__internal__c_update_content_length( + llhttp__internal_t* state, + const unsigned char* p, + const unsigned char* endp) { + state->content_length = 0; + return 0; +} + int llhttp__internal__c_mul_add_content_length( llhttp__internal_t* state, const unsigned char* p, @@ -10279,14 +8886,6 @@ int llhttp__internal__c_or_flags( return 0; } -int llhttp__on_chunk_extension_name_complete( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - -int llhttp__on_chunk_extension_value_complete( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__internal__c_update_finish_3( llhttp__internal_t* state, const unsigned char* p, @@ -10320,6 +8919,13 @@ int llhttp__internal__c_store_header_state( return 0; } +int llhttp__internal__c_test_lenient_flags_2( + llhttp__internal_t* state, + const unsigned char* p, + const unsigned char* endp) { + return (state->lenient_flags & 1) == 1; +} + int llhttp__on_header_field_complete( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp); @@ -10455,7 +9061,7 @@ int llhttp__internal__c_test_flags_3( return (state->flags & 8) == 8; } -int llhttp__internal__c_test_lenient_flags_9( +int llhttp__internal__c_test_lenient_flags_8( llhttp__internal_t* state, const unsigned char* p, const unsigned char* endp) { @@ -10519,17 +9125,13 @@ int llhttp__internal__c_store_http_minor( return 0; } -int llhttp__internal__c_test_lenient_flags_11( +int llhttp__internal__c_test_lenient_flags_10( llhttp__internal_t* state, const unsigned char* p, const unsigned char* endp) { return (state->lenient_flags & 16) == 16; } -int llhttp__on_version_complete( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp); - int llhttp__internal__c_load_http_major( llhttp__internal_t* state, const unsigned char* p, @@ -10575,6 +9177,11 @@ int llhttp__internal__c_mul_add_status_code( } } state->status_code += match; + + /* Enforce maximum */ + if (state->status_code > 999) { + return 1; + } return 0; } @@ -10624,7 +9231,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_llhttp__after_message_complete: { switch (llhttp__after_message_complete(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_update_content_length; + goto s_n_llhttp__internal__n_invoke_update_finish_2; default: goto s_n_llhttp__internal__n_invoke_update_finish_1; } @@ -10658,9 +9265,9 @@ static llparse_state_t llhttp__internal__run( case 0: goto s_n_llhttp__internal__n_invoke_is_equal_upgrade; case 21: - goto s_n_llhttp__internal__n_pause_11; + goto s_n_llhttp__internal__n_pause_5; default: - goto s_n_llhttp__internal__n_error_24; + goto s_n_llhttp__internal__n_error_10; } /* UNREACHABLE */; abort(); @@ -10735,101 +9342,18 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete: { - switch (llhttp__on_chunk_extension_name_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_size_almost_done; - case 21: - goto s_n_llhttp__internal__n_pause_5; - default: - goto s_n_llhttp__internal__n_error_11; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1: { - switch (llhttp__on_chunk_extension_name_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_extensions; - case 21: - goto s_n_llhttp__internal__n_pause_6; - default: - goto s_n_llhttp__internal__n_error_12; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete: { - switch (llhttp__on_chunk_extension_value_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_size_almost_done; - case 21: - goto s_n_llhttp__internal__n_pause_7; - default: - goto s_n_llhttp__internal__n_error_14; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_chunk_extension_quoted_value_done: - s_n_llhttp__internal__n_chunk_extension_quoted_value_done: { - if (p == endp) { - return s_n_llhttp__internal__n_chunk_extension_quoted_value_done; - } - switch (*p) { - case 13: { - p++; - goto s_n_llhttp__internal__n_chunk_size_almost_done; - } - case ';': { - p++; - goto s_n_llhttp__internal__n_chunk_extensions; - } - default: { - goto s_n_llhttp__internal__n_error_16; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1: { - switch (llhttp__on_chunk_extension_value_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_extension_quoted_value_done; - case 21: - goto s_n_llhttp__internal__n_pause_8; - default: - goto s_n_llhttp__internal__n_error_15; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_17: - s_n_llhttp__internal__n_error_17: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions quoted value"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_chunk_extension_quoted_value: - s_n_llhttp__internal__n_chunk_extension_quoted_value: { + case s_n_llhttp__internal__n_chunk_parameters: + s_n_llhttp__internal__n_chunk_parameters: { static uint8_t lookup_table[] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -10839,184 +9363,46 @@ static llparse_state_t llhttp__internal__run( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }; if (p == endp) { - return s_n_llhttp__internal__n_chunk_extension_quoted_value; - } - switch (lookup_table[(uint8_t) *p]) { - case 1: { - p++; - goto s_n_llhttp__internal__n_chunk_extension_quoted_value; - } - case 2: { - p++; - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_1; - } - default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_2; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2: - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2: { - switch (llhttp__on_chunk_extension_value_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_chunk_size_otherwise; - case 21: - goto s_n_llhttp__internal__n_pause_9; - default: - goto s_n_llhttp__internal__n_error_18; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_19: - s_n_llhttp__internal__n_error_19: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions value"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_chunk_extension_value: - s_n_llhttp__internal__n_chunk_extension_value: { - static uint8_t lookup_table[] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2, 3, 2, 2, 2, 2, 2, 0, 0, 2, 2, 0, 2, 2, 0, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 4, 0, 0, 0, 0, - 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }; - if (p == endp) { - return s_n_llhttp__internal__n_chunk_extension_value; + return s_n_llhttp__internal__n_chunk_parameters; } switch (lookup_table[(uint8_t) *p]) { case 1: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value; - } - case 2: { - p++; - goto s_n_llhttp__internal__n_chunk_extension_value; - } - case 3: { p++; - goto s_n_llhttp__internal__n_chunk_extension_quoted_value; - } - case 4: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_3; - } - default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_4; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value: - s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_chunk_extension_value; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_2; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_20: - s_n_llhttp__internal__n_error_20: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions name"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_chunk_extension_name: - s_n_llhttp__internal__n_chunk_extension_name: { - static uint8_t lookup_table[] = { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2, 0, 2, 2, 2, 2, 2, 0, 0, 2, 2, 0, 2, 2, 0, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 3, 0, 4, 0, 0, - 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }; - if (p == endp) { - return s_n_llhttp__internal__n_chunk_extension_name; - } - switch (lookup_table[(uint8_t) *p]) { - case 1: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name; + goto s_n_llhttp__internal__n_chunk_parameters; } case 2: { - p++; - goto s_n_llhttp__internal__n_chunk_extension_name; - } - case 3: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_1; - } - case 4: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_2; + goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_parameters; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_3; + goto s_n_llhttp__internal__n_error_6; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name: - s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name: { + case s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters: + s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters: { if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name; + return s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters; } state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_chunk_extension_name; - goto s_n_llhttp__internal__n_chunk_extension_name; + state->_span_cb0 = llhttp__on_chunk_parameters; + goto s_n_llhttp__internal__n_chunk_parameters; /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_chunk_extensions: - s_n_llhttp__internal__n_chunk_extensions: { + case s_n_llhttp__internal__n_chunk_parameters_ows: + s_n_llhttp__internal__n_chunk_parameters_ows: { if (p == endp) { - return s_n_llhttp__internal__n_chunk_extensions; + return s_n_llhttp__internal__n_chunk_parameters_ows; } switch (*p) { - case 13: { - p++; - goto s_n_llhttp__internal__n_error_9; - } case ' ': { p++; - goto s_n_llhttp__internal__n_error_10; + goto s_n_llhttp__internal__n_chunk_parameters_ows; } default: { - goto s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_name; + goto s_n_llhttp__internal__n_span_start_llhttp__on_chunk_parameters; } } /* UNREACHABLE */; @@ -11034,10 +9420,10 @@ static llparse_state_t llhttp__internal__run( } case ';': { p++; - goto s_n_llhttp__internal__n_chunk_extensions; + goto s_n_llhttp__internal__n_chunk_parameters_ows; } default: { - goto s_n_llhttp__internal__n_error_21; + goto s_n_llhttp__internal__n_error_7; } } /* UNREACHABLE */; @@ -11283,14 +9669,14 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_mul_add_content_length; } default: { - goto s_n_llhttp__internal__n_error_23; + goto s_n_llhttp__internal__n_error_9; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_update_content_length_1: - s_n_llhttp__internal__n_invoke_update_content_length_1: { + case s_n_llhttp__internal__n_invoke_update_content_length: + s_n_llhttp__internal__n_invoke_update_content_length: { switch (llhttp__internal__c_update_content_length(state, p, endp)) { default: goto s_n_llhttp__internal__n_chunk_size_digit; @@ -11354,13 +9740,13 @@ static llparse_state_t llhttp__internal__run( case 1: goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_1; case 2: - goto s_n_llhttp__internal__n_invoke_update_content_length_1; + goto s_n_llhttp__internal__n_invoke_update_content_length; case 3: goto s_n_llhttp__internal__n_span_start_llhttp__on_body_1; case 4: goto s_n_llhttp__internal__n_invoke_update_finish_3; case 5: - goto s_n_llhttp__internal__n_error_25; + goto s_n_llhttp__internal__n_error_11; default: goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete; } @@ -11394,8 +9780,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_28: - s_n_llhttp__internal__n_error_28: { + case s_n_llhttp__internal__n_error_14: + s_n_llhttp__internal__n_error_14: { state->error = 0xa; state->reason = "Invalid header field char"; state->error_pos = (const char*) p; @@ -11407,12 +9793,8 @@ static llparse_state_t llhttp__internal__run( case s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete: s_n_llhttp__internal__n_invoke_llhttp__on_header_value_complete: { switch (llhttp__on_header_value_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_header_field_start; - case 21: - goto s_n_llhttp__internal__n_pause_14; default: - goto s_n_llhttp__internal__n_error_32; + goto s_n_llhttp__internal__n_header_field_start; } /* UNREACHABLE */; abort(); @@ -11436,11 +9818,11 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 9: { p++; - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_5; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4; } case ' ': { p++; - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_5; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4; } default: { goto s_n_llhttp__internal__n_invoke_load_header_state; @@ -11460,7 +9842,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_header_value_discard_lws; } default: { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_6; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_5; } } /* UNREACHABLE */; @@ -11473,10 +9855,10 @@ static llparse_state_t llhttp__internal__run( } switch (*p) { case 9: { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_7; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_6; } case ' ': { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_7; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_6; } default: { goto s_n_llhttp__internal__n_invoke_load_header_state_4; @@ -11496,7 +9878,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_header_value_lws; } default: { - goto s_n_llhttp__internal__n_error_36; + goto s_n_llhttp__internal__n_error_20; } } /* UNREACHABLE */; @@ -11522,8 +9904,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_37: - s_n_llhttp__internal__n_error_37: { + case s_n_llhttp__internal__n_error_21: + s_n_llhttp__internal__n_error_21: { state->error = 0xa; state->reason = "Invalid header value char"; state->error_pos = (const char*) p; @@ -11542,7 +9924,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_1; } default: { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_8; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_7; } } /* UNREACHABLE */; @@ -11719,8 +10101,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_39: - s_n_llhttp__internal__n_error_39: { + case s_n_llhttp__internal__n_error_23: + s_n_llhttp__internal__n_error_23: { state->error = 0xb; state->reason = "Content-Length overflow"; state->error_pos = (const char*) p; @@ -11729,8 +10111,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_40: - s_n_llhttp__internal__n_error_40: { + case s_n_llhttp__internal__n_error_24: + s_n_llhttp__internal__n_error_24: { state->error = 0xb; state->reason = "Invalid character in Content-Length"; state->error_pos = (const char*) p; @@ -11825,8 +10207,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_42: - s_n_llhttp__internal__n_error_42: { + case s_n_llhttp__internal__n_error_26: + s_n_llhttp__internal__n_error_26: { state->error = 0xf; state->reason = "Invalid `Transfer-Encoding` header value"; state->error_pos = (const char*) p; @@ -11835,8 +10217,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_41: - s_n_llhttp__internal__n_error_41: { + case s_n_llhttp__internal__n_error_25: + s_n_llhttp__internal__n_error_25: { state->error = 0xf; state->reason = "Invalid `Transfer-Encoding` header value"; state->error_pos = (const char*) p; @@ -12037,7 +10419,7 @@ static llparse_state_t llhttp__internal__run( } case 10: { p++; - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_4; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_3; } case 13: { p++; @@ -12057,12 +10439,8 @@ static llparse_state_t llhttp__internal__run( case s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete: s_n_llhttp__internal__n_invoke_llhttp__on_header_field_complete: { switch (llhttp__on_header_field_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_header_value_discard_ws; - case 21: - goto s_n_llhttp__internal__n_pause_15; default: - goto s_n_llhttp__internal__n_error_29; + goto s_n_llhttp__internal__n_header_value_discard_ws; } /* UNREACHABLE */; abort(); @@ -12077,7 +10455,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_2; } default: { - goto s_n_llhttp__internal__n_error_43; + goto s_n_llhttp__internal__n_error_27; } } /* UNREACHABLE */; @@ -12161,7 +10539,7 @@ static llparse_state_t llhttp__internal__run( } switch (*p) { case ' ': { - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_3; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_2; } case ':': { goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_1; @@ -12403,23 +10781,6 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_headers_start: - s_n_llhttp__internal__n_headers_start: { - if (p == endp) { - return s_n_llhttp__internal__n_headers_start; - } - switch (*p) { - case ' ': { - p++; - goto s_n_llhttp__internal__n_invoke_test_lenient_flags; - } - default: { - goto s_n_llhttp__internal__n_header_field_start; - } - } - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_url_skip_to_http09: s_n_llhttp__internal__n_url_skip_to_http09: { if (p == endp) { @@ -12448,7 +10809,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_url_skip_lf_to_http09; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_44; + goto s_n_llhttp__internal__n_error_28; } } /* UNREACHABLE */; @@ -12466,13 +10827,13 @@ static llparse_state_t llhttp__internal__run( switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_error_50; + goto s_n_llhttp__internal__n_error_33; } case kMatchPause: { return s_n_llhttp__internal__n_req_pri_upgrade; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_51; + goto s_n_llhttp__internal__n_error_34; } } /* UNREACHABLE */; @@ -12486,10 +10847,10 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 10: { p++; - goto s_n_llhttp__internal__n_headers_start; + goto s_n_llhttp__internal__n_header_field_start; } default: { - goto s_n_llhttp__internal__n_error_49; + goto s_n_llhttp__internal__n_error_32; } } /* UNREACHABLE */; @@ -12503,63 +10864,19 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 10: { p++; - goto s_n_llhttp__internal__n_headers_start; + goto s_n_llhttp__internal__n_header_field_start; } case 13: { p++; goto s_n_llhttp__internal__n_req_http_complete_1; } default: { - goto s_n_llhttp__internal__n_error_49; + goto s_n_llhttp__internal__n_error_32; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_load_method_1: - s_n_llhttp__internal__n_invoke_load_method_1: { - switch (llhttp__internal__c_load_method(state, p, endp)) { - case 34: - goto s_n_llhttp__internal__n_req_pri_upgrade; - default: - goto s_n_llhttp__internal__n_req_http_complete; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_version_complete: - s_n_llhttp__internal__n_invoke_llhttp__on_version_complete: { - switch (llhttp__on_version_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_invoke_load_method_1; - case 21: - goto s_n_llhttp__internal__n_pause_17; - default: - goto s_n_llhttp__internal__n_error_48; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_47: - s_n_llhttp__internal__n_error_47: { - state->error = 0x9; - state->reason = "Invalid HTTP version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_52: - s_n_llhttp__internal__n_error_52: { - state->error = 0x9; - state->reason = "Invalid minor version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_http_minor: s_n_llhttp__internal__n_req_http_minor: { if (p == endp) { @@ -12617,22 +10934,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_minor; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_2; + goto s_n_llhttp__internal__n_error_37; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_53: - s_n_llhttp__internal__n_error_53: { - state->error = 0x9; - state->reason = "Expected dot"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_http_dot: s_n_llhttp__internal__n_req_http_dot: { if (p == endp) { @@ -12644,22 +10951,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_http_minor; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_3; + goto s_n_llhttp__internal__n_error_38; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_54: - s_n_llhttp__internal__n_error_54: { - state->error = 0x9; - state->reason = "Invalid major version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_http_major: s_n_llhttp__internal__n_req_http_major: { if (p == endp) { @@ -12717,23 +11014,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_major; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_4; + goto s_n_llhttp__internal__n_error_39; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_version: - s_n_llhttp__internal__n_span_start_llhttp__on_version: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_version; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_version; - goto s_n_llhttp__internal__n_req_http_major; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_http_start_1: s_n_llhttp__internal__n_req_http_start_1: { llparse_match_t match_seq; @@ -12752,7 +11038,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_http_start_1; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_57; + goto s_n_llhttp__internal__n_error_42; } } /* UNREACHABLE */; @@ -12776,7 +11062,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_http_start_2; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_57; + goto s_n_llhttp__internal__n_error_42; } } /* UNREACHABLE */; @@ -12800,7 +11086,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_http_start_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_57; + goto s_n_llhttp__internal__n_error_42; } } /* UNREACHABLE */; @@ -12829,7 +11115,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_http_start_3; } default: { - goto s_n_llhttp__internal__n_error_57; + goto s_n_llhttp__internal__n_error_42; } } /* UNREACHABLE */; @@ -12883,7 +11169,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_span_end_llhttp__on_url_8; } default: { - goto s_n_llhttp__internal__n_error_58; + goto s_n_llhttp__internal__n_error_43; } } /* UNREACHABLE */; @@ -12940,7 +11226,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_span_end_stub_query_3; } default: { - goto s_n_llhttp__internal__n_error_59; + goto s_n_llhttp__internal__n_error_44; } } /* UNREACHABLE */; @@ -12970,7 +11256,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_query; } default: { - goto s_n_llhttp__internal__n_error_60; + goto s_n_llhttp__internal__n_error_45; } } /* UNREACHABLE */; @@ -13111,10 +11397,10 @@ static llparse_state_t llhttp__internal__run( } case 7: { p++; - goto s_n_llhttp__internal__n_error_61; + goto s_n_llhttp__internal__n_error_46; } default: { - goto s_n_llhttp__internal__n_error_62; + goto s_n_llhttp__internal__n_error_47; } } /* UNREACHABLE */; @@ -13169,7 +11455,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_server_with_at; } default: { - goto s_n_llhttp__internal__n_error_63; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -13186,7 +11472,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_server; } default: { - goto s_n_llhttp__internal__n_error_65; + goto s_n_llhttp__internal__n_error_50; } } /* UNREACHABLE */; @@ -13200,22 +11486,22 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 10: { p++; - goto s_n_llhttp__internal__n_error_64; + goto s_n_llhttp__internal__n_error_49; } case 13: { p++; - goto s_n_llhttp__internal__n_error_64; + goto s_n_llhttp__internal__n_error_49; } case ' ': { p++; - goto s_n_llhttp__internal__n_error_64; + goto s_n_llhttp__internal__n_error_49; } case '/': { p++; goto s_n_llhttp__internal__n_url_schema_delim_1; } default: { - goto s_n_llhttp__internal__n_error_65; + goto s_n_llhttp__internal__n_error_50; } } /* UNREACHABLE */; @@ -13257,7 +11543,7 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_64; + goto s_n_llhttp__internal__n_error_49; } case 2: { goto s_n_llhttp__internal__n_span_end_stub_schema; @@ -13267,7 +11553,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_schema; } default: { - goto s_n_llhttp__internal__n_error_66; + goto s_n_llhttp__internal__n_error_51; } } /* UNREACHABLE */; @@ -13299,7 +11585,7 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_64; + goto s_n_llhttp__internal__n_error_49; } case 2: { goto s_n_llhttp__internal__n_span_start_stub_path_2; @@ -13308,7 +11594,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_schema; } default: { - goto s_n_llhttp__internal__n_error_67; + goto s_n_llhttp__internal__n_error_52; } } /* UNREACHABLE */; @@ -13364,29 +11650,16 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_spaces_before_url; } default: { - goto s_n_llhttp__internal__n_error_68; + goto s_n_llhttp__internal__n_error_53; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1: - s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1: { - switch (llhttp__on_method_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_req_first_space_before_url; - case 21: - goto s_n_llhttp__internal__n_pause_22; - default: - goto s_n_llhttp__internal__n_error_84; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_after_start_req_2: - s_n_llhttp__internal__n_after_start_req_2: { + case s_n_llhttp__internal__n_start_req_2: + s_n_llhttp__internal__n_start_req_2: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_2; + return s_n_llhttp__internal__n_start_req_2; } switch (*p) { case 'L': { @@ -13395,18 +11668,18 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_3: - s_n_llhttp__internal__n_after_start_req_3: { + case s_n_llhttp__internal__n_start_req_3: + s_n_llhttp__internal__n_start_req_3: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_3; + return s_n_llhttp__internal__n_start_req_3; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob19, 6); p = match_seq.current; @@ -13417,42 +11690,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_3; + return s_n_llhttp__internal__n_start_req_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_1: - s_n_llhttp__internal__n_after_start_req_1: { + case s_n_llhttp__internal__n_start_req_1: + s_n_llhttp__internal__n_start_req_1: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_1; + return s_n_llhttp__internal__n_start_req_1; } switch (*p) { case 'C': { p++; - goto s_n_llhttp__internal__n_after_start_req_2; + goto s_n_llhttp__internal__n_start_req_2; } case 'N': { p++; - goto s_n_llhttp__internal__n_after_start_req_3; + goto s_n_llhttp__internal__n_start_req_3; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_4: - s_n_llhttp__internal__n_after_start_req_4: { + case s_n_llhttp__internal__n_start_req_4: + s_n_llhttp__internal__n_start_req_4: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_4; + return s_n_llhttp__internal__n_start_req_4; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob20, 3); p = match_seq.current; @@ -13463,21 +11736,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_4; + return s_n_llhttp__internal__n_start_req_4; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_6: - s_n_llhttp__internal__n_after_start_req_6: { + case s_n_llhttp__internal__n_start_req_6: + s_n_llhttp__internal__n_start_req_6: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_6; + return s_n_llhttp__internal__n_start_req_6; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob21, 6); p = match_seq.current; @@ -13488,21 +11761,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_6; + return s_n_llhttp__internal__n_start_req_6; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_8: - s_n_llhttp__internal__n_after_start_req_8: { + case s_n_llhttp__internal__n_start_req_8: + s_n_llhttp__internal__n_start_req_8: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_8; + return s_n_llhttp__internal__n_start_req_8; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob22, 4); p = match_seq.current; @@ -13513,19 +11786,19 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_8; + return s_n_llhttp__internal__n_start_req_8; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_9: - s_n_llhttp__internal__n_after_start_req_9: { + case s_n_llhttp__internal__n_start_req_9: + s_n_llhttp__internal__n_start_req_9: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_9; + return s_n_llhttp__internal__n_start_req_9; } switch (*p) { case 'Y': { @@ -13534,60 +11807,60 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_7: - s_n_llhttp__internal__n_after_start_req_7: { + case s_n_llhttp__internal__n_start_req_7: + s_n_llhttp__internal__n_start_req_7: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_7; + return s_n_llhttp__internal__n_start_req_7; } switch (*p) { case 'N': { p++; - goto s_n_llhttp__internal__n_after_start_req_8; + goto s_n_llhttp__internal__n_start_req_8; } case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_9; + goto s_n_llhttp__internal__n_start_req_9; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_5: - s_n_llhttp__internal__n_after_start_req_5: { + case s_n_llhttp__internal__n_start_req_5: + s_n_llhttp__internal__n_start_req_5: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_5; + return s_n_llhttp__internal__n_start_req_5; } switch (*p) { case 'H': { p++; - goto s_n_llhttp__internal__n_after_start_req_6; + goto s_n_llhttp__internal__n_start_req_6; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_7; + goto s_n_llhttp__internal__n_start_req_7; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_12: - s_n_llhttp__internal__n_after_start_req_12: { + case s_n_llhttp__internal__n_start_req_12: + s_n_llhttp__internal__n_start_req_12: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_12; + return s_n_llhttp__internal__n_start_req_12; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob23, 3); p = match_seq.current; @@ -13598,21 +11871,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_12; + return s_n_llhttp__internal__n_start_req_12; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_13: - s_n_llhttp__internal__n_after_start_req_13: { + case s_n_llhttp__internal__n_start_req_13: + s_n_llhttp__internal__n_start_req_13: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_13; + return s_n_llhttp__internal__n_start_req_13; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob24, 5); p = match_seq.current; @@ -13623,59 +11896,59 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_13; + return s_n_llhttp__internal__n_start_req_13; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_11: - s_n_llhttp__internal__n_after_start_req_11: { + case s_n_llhttp__internal__n_start_req_11: + s_n_llhttp__internal__n_start_req_11: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_11; + return s_n_llhttp__internal__n_start_req_11; } switch (*p) { case 'L': { p++; - goto s_n_llhttp__internal__n_after_start_req_12; + goto s_n_llhttp__internal__n_start_req_12; } case 'S': { p++; - goto s_n_llhttp__internal__n_after_start_req_13; + goto s_n_llhttp__internal__n_start_req_13; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_10: - s_n_llhttp__internal__n_after_start_req_10: { + case s_n_llhttp__internal__n_start_req_10: + s_n_llhttp__internal__n_start_req_10: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_10; + return s_n_llhttp__internal__n_start_req_10; } switch (*p) { case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_11; + goto s_n_llhttp__internal__n_start_req_11; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_14: - s_n_llhttp__internal__n_after_start_req_14: { + case s_n_llhttp__internal__n_start_req_14: + s_n_llhttp__internal__n_start_req_14: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_14; + return s_n_llhttp__internal__n_start_req_14; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob25, 4); p = match_seq.current; @@ -13686,21 +11959,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_14; + return s_n_llhttp__internal__n_start_req_14; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_17: - s_n_llhttp__internal__n_after_start_req_17: { + case s_n_llhttp__internal__n_start_req_17: + s_n_llhttp__internal__n_start_req_17: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_17; + return s_n_llhttp__internal__n_start_req_17; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob27, 9); p = match_seq.current; @@ -13711,24 +11984,24 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_17; + return s_n_llhttp__internal__n_start_req_17; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_16: - s_n_llhttp__internal__n_after_start_req_16: { + case s_n_llhttp__internal__n_start_req_16: + s_n_llhttp__internal__n_start_req_16: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_16; + return s_n_llhttp__internal__n_start_req_16; } switch (*p) { case '_': { p++; - goto s_n_llhttp__internal__n_after_start_req_17; + goto s_n_llhttp__internal__n_start_req_17; } default: { match = 1; @@ -13738,36 +12011,36 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_15: - s_n_llhttp__internal__n_after_start_req_15: { + case s_n_llhttp__internal__n_start_req_15: + s_n_llhttp__internal__n_start_req_15: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_15; + return s_n_llhttp__internal__n_start_req_15; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob26, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_after_start_req_16; + goto s_n_llhttp__internal__n_start_req_16; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_15; + return s_n_llhttp__internal__n_start_req_15; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_18: - s_n_llhttp__internal__n_after_start_req_18: { + case s_n_llhttp__internal__n_start_req_18: + s_n_llhttp__internal__n_start_req_18: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_18; + return s_n_llhttp__internal__n_start_req_18; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob28, 3); p = match_seq.current; @@ -13778,21 +12051,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_18; + return s_n_llhttp__internal__n_start_req_18; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_20: - s_n_llhttp__internal__n_after_start_req_20: { + case s_n_llhttp__internal__n_start_req_20: + s_n_llhttp__internal__n_start_req_20: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_20; + return s_n_llhttp__internal__n_start_req_20; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob29, 2); p = match_seq.current; @@ -13803,21 +12076,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_20; + return s_n_llhttp__internal__n_start_req_20; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_21: - s_n_llhttp__internal__n_after_start_req_21: { + case s_n_llhttp__internal__n_start_req_21: + s_n_llhttp__internal__n_start_req_21: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_21; + return s_n_llhttp__internal__n_start_req_21; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob30, 2); p = match_seq.current; @@ -13828,42 +12101,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_21; + return s_n_llhttp__internal__n_start_req_21; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_19: - s_n_llhttp__internal__n_after_start_req_19: { + case s_n_llhttp__internal__n_start_req_19: + s_n_llhttp__internal__n_start_req_19: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_19; + return s_n_llhttp__internal__n_start_req_19; } switch (*p) { case 'I': { p++; - goto s_n_llhttp__internal__n_after_start_req_20; + goto s_n_llhttp__internal__n_start_req_20; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_21; + goto s_n_llhttp__internal__n_start_req_21; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_23: - s_n_llhttp__internal__n_after_start_req_23: { + case s_n_llhttp__internal__n_start_req_23: + s_n_llhttp__internal__n_start_req_23: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_23; + return s_n_llhttp__internal__n_start_req_23; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob31, 6); p = match_seq.current; @@ -13874,21 +12147,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_23; + return s_n_llhttp__internal__n_start_req_23; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_24: - s_n_llhttp__internal__n_after_start_req_24: { + case s_n_llhttp__internal__n_start_req_24: + s_n_llhttp__internal__n_start_req_24: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_24; + return s_n_llhttp__internal__n_start_req_24; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob32, 3); p = match_seq.current; @@ -13899,21 +12172,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_24; + return s_n_llhttp__internal__n_start_req_24; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_26: - s_n_llhttp__internal__n_after_start_req_26: { + case s_n_llhttp__internal__n_start_req_26: + s_n_llhttp__internal__n_start_req_26: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_26; + return s_n_llhttp__internal__n_start_req_26; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob33, 7); p = match_seq.current; @@ -13924,21 +12197,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_26; + return s_n_llhttp__internal__n_start_req_26; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_28: - s_n_llhttp__internal__n_after_start_req_28: { + case s_n_llhttp__internal__n_start_req_28: + s_n_llhttp__internal__n_start_req_28: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_28; + return s_n_llhttp__internal__n_start_req_28; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob34, 6); p = match_seq.current; @@ -13949,19 +12222,19 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_28; + return s_n_llhttp__internal__n_start_req_28; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_29: - s_n_llhttp__internal__n_after_start_req_29: { + case s_n_llhttp__internal__n_start_req_29: + s_n_llhttp__internal__n_start_req_29: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_29; + return s_n_llhttp__internal__n_start_req_29; } switch (*p) { case 'L': { @@ -13970,60 +12243,60 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_27: - s_n_llhttp__internal__n_after_start_req_27: { + case s_n_llhttp__internal__n_start_req_27: + s_n_llhttp__internal__n_start_req_27: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_27; + return s_n_llhttp__internal__n_start_req_27; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_28; + goto s_n_llhttp__internal__n_start_req_28; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_29; + goto s_n_llhttp__internal__n_start_req_29; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_25: - s_n_llhttp__internal__n_after_start_req_25: { + case s_n_llhttp__internal__n_start_req_25: + s_n_llhttp__internal__n_start_req_25: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_25; + return s_n_llhttp__internal__n_start_req_25; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_26; + goto s_n_llhttp__internal__n_start_req_26; } case 'C': { p++; - goto s_n_llhttp__internal__n_after_start_req_27; + goto s_n_llhttp__internal__n_start_req_27; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_30: - s_n_llhttp__internal__n_after_start_req_30: { + case s_n_llhttp__internal__n_start_req_30: + s_n_llhttp__internal__n_start_req_30: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_30; + return s_n_llhttp__internal__n_start_req_30; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob35, 2); p = match_seq.current; @@ -14034,50 +12307,50 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_30; + return s_n_llhttp__internal__n_start_req_30; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_22: - s_n_llhttp__internal__n_after_start_req_22: { + case s_n_llhttp__internal__n_start_req_22: + s_n_llhttp__internal__n_start_req_22: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_22; + return s_n_llhttp__internal__n_start_req_22; } switch (*p) { case '-': { p++; - goto s_n_llhttp__internal__n_after_start_req_23; + goto s_n_llhttp__internal__n_start_req_23; } case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_24; + goto s_n_llhttp__internal__n_start_req_24; } case 'K': { p++; - goto s_n_llhttp__internal__n_after_start_req_25; + goto s_n_llhttp__internal__n_start_req_25; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_30; + goto s_n_llhttp__internal__n_start_req_30; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_31: - s_n_llhttp__internal__n_after_start_req_31: { + case s_n_llhttp__internal__n_start_req_31: + s_n_llhttp__internal__n_start_req_31: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_31; + return s_n_llhttp__internal__n_start_req_31; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob36, 5); p = match_seq.current; @@ -14088,21 +12361,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_31; + return s_n_llhttp__internal__n_start_req_31; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_32: - s_n_llhttp__internal__n_after_start_req_32: { + case s_n_llhttp__internal__n_start_req_32: + s_n_llhttp__internal__n_start_req_32: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_32; + return s_n_llhttp__internal__n_start_req_32; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob37, 6); p = match_seq.current; @@ -14113,21 +12386,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_32; + return s_n_llhttp__internal__n_start_req_32; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_35: - s_n_llhttp__internal__n_after_start_req_35: { + case s_n_llhttp__internal__n_start_req_35: + s_n_llhttp__internal__n_start_req_35: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_35; + return s_n_llhttp__internal__n_start_req_35; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob38, 2); p = match_seq.current; @@ -14138,21 +12411,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_35; + return s_n_llhttp__internal__n_start_req_35; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_36: - s_n_llhttp__internal__n_after_start_req_36: { + case s_n_llhttp__internal__n_start_req_36: + s_n_llhttp__internal__n_start_req_36: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_36; + return s_n_llhttp__internal__n_start_req_36; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob39, 2); p = match_seq.current; @@ -14163,42 +12436,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_36; + return s_n_llhttp__internal__n_start_req_36; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_34: - s_n_llhttp__internal__n_after_start_req_34: { + case s_n_llhttp__internal__n_start_req_34: + s_n_llhttp__internal__n_start_req_34: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_34; + return s_n_llhttp__internal__n_start_req_34; } switch (*p) { case 'T': { p++; - goto s_n_llhttp__internal__n_after_start_req_35; + goto s_n_llhttp__internal__n_start_req_35; } case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_36; + goto s_n_llhttp__internal__n_start_req_36; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_37: - s_n_llhttp__internal__n_after_start_req_37: { + case s_n_llhttp__internal__n_start_req_37: + s_n_llhttp__internal__n_start_req_37: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_37; + return s_n_llhttp__internal__n_start_req_37; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob40, 2); p = match_seq.current; @@ -14209,21 +12482,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_37; + return s_n_llhttp__internal__n_start_req_37; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_38: - s_n_llhttp__internal__n_after_start_req_38: { + case s_n_llhttp__internal__n_start_req_38: + s_n_llhttp__internal__n_start_req_38: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_38; + return s_n_llhttp__internal__n_start_req_38; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob41, 2); p = match_seq.current; @@ -14234,21 +12507,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_38; + return s_n_llhttp__internal__n_start_req_38; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_42: - s_n_llhttp__internal__n_after_start_req_42: { + case s_n_llhttp__internal__n_start_req_42: + s_n_llhttp__internal__n_start_req_42: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_42; + return s_n_llhttp__internal__n_start_req_42; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob42, 3); p = match_seq.current; @@ -14259,21 +12532,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_42; + return s_n_llhttp__internal__n_start_req_42; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_43: - s_n_llhttp__internal__n_after_start_req_43: { + case s_n_llhttp__internal__n_start_req_43: + s_n_llhttp__internal__n_start_req_43: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_43; + return s_n_llhttp__internal__n_start_req_43; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob43, 4); p = match_seq.current; @@ -14284,57 +12557,57 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_43; + return s_n_llhttp__internal__n_start_req_43; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_41: - s_n_llhttp__internal__n_after_start_req_41: { + case s_n_llhttp__internal__n_start_req_41: + s_n_llhttp__internal__n_start_req_41: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_41; + return s_n_llhttp__internal__n_start_req_41; } switch (*p) { case 'F': { p++; - goto s_n_llhttp__internal__n_after_start_req_42; + goto s_n_llhttp__internal__n_start_req_42; } case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_43; + goto s_n_llhttp__internal__n_start_req_43; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_40: - s_n_llhttp__internal__n_after_start_req_40: { + case s_n_llhttp__internal__n_start_req_40: + s_n_llhttp__internal__n_start_req_40: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_40; + return s_n_llhttp__internal__n_start_req_40; } switch (*p) { case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_41; + goto s_n_llhttp__internal__n_start_req_41; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_39: - s_n_llhttp__internal__n_after_start_req_39: { + case s_n_llhttp__internal__n_start_req_39: + s_n_llhttp__internal__n_start_req_39: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_39; + return s_n_llhttp__internal__n_start_req_39; } switch (*p) { case 'I': { @@ -14344,21 +12617,21 @@ static llparse_state_t llhttp__internal__run( } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_40; + goto s_n_llhttp__internal__n_start_req_40; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_45: - s_n_llhttp__internal__n_after_start_req_45: { + case s_n_llhttp__internal__n_start_req_45: + s_n_llhttp__internal__n_start_req_45: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_45; + return s_n_llhttp__internal__n_start_req_45; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob44, 2); p = match_seq.current; @@ -14369,24 +12642,24 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_45; + return s_n_llhttp__internal__n_start_req_45; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_44: - s_n_llhttp__internal__n_after_start_req_44: { + case s_n_llhttp__internal__n_start_req_44: + s_n_llhttp__internal__n_start_req_44: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_44; + return s_n_llhttp__internal__n_start_req_44; } switch (*p) { case 'R': { p++; - goto s_n_llhttp__internal__n_after_start_req_45; + goto s_n_llhttp__internal__n_start_req_45; } case 'T': { p++; @@ -14394,51 +12667,51 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_33: - s_n_llhttp__internal__n_after_start_req_33: { + case s_n_llhttp__internal__n_start_req_33: + s_n_llhttp__internal__n_start_req_33: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_33; + return s_n_llhttp__internal__n_start_req_33; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_34; + goto s_n_llhttp__internal__n_start_req_34; } case 'L': { p++; - goto s_n_llhttp__internal__n_after_start_req_37; + goto s_n_llhttp__internal__n_start_req_37; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_38; + goto s_n_llhttp__internal__n_start_req_38; } case 'R': { p++; - goto s_n_llhttp__internal__n_after_start_req_39; + goto s_n_llhttp__internal__n_start_req_39; } case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_44; + goto s_n_llhttp__internal__n_start_req_44; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_48: - s_n_llhttp__internal__n_after_start_req_48: { + case s_n_llhttp__internal__n_start_req_48: + s_n_llhttp__internal__n_start_req_48: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_48; + return s_n_llhttp__internal__n_start_req_48; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob45, 3); p = match_seq.current; @@ -14449,21 +12722,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_48; + return s_n_llhttp__internal__n_start_req_48; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_49: - s_n_llhttp__internal__n_after_start_req_49: { + case s_n_llhttp__internal__n_start_req_49: + s_n_llhttp__internal__n_start_req_49: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_49; + return s_n_llhttp__internal__n_start_req_49; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob46, 3); p = match_seq.current; @@ -14474,21 +12747,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_49; + return s_n_llhttp__internal__n_start_req_49; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_50: - s_n_llhttp__internal__n_after_start_req_50: { + case s_n_llhttp__internal__n_start_req_50: + s_n_llhttp__internal__n_start_req_50: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_50; + return s_n_llhttp__internal__n_start_req_50; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob47, 5); p = match_seq.current; @@ -14499,21 +12772,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_50; + return s_n_llhttp__internal__n_start_req_50; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_51: - s_n_llhttp__internal__n_after_start_req_51: { + case s_n_llhttp__internal__n_start_req_51: + s_n_llhttp__internal__n_start_req_51: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_51; + return s_n_llhttp__internal__n_start_req_51; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob48, 3); p = match_seq.current; @@ -14524,67 +12797,67 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_51; + return s_n_llhttp__internal__n_start_req_51; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_47: - s_n_llhttp__internal__n_after_start_req_47: { + case s_n_llhttp__internal__n_start_req_47: + s_n_llhttp__internal__n_start_req_47: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_47; + return s_n_llhttp__internal__n_start_req_47; } switch (*p) { case 'B': { p++; - goto s_n_llhttp__internal__n_after_start_req_48; + goto s_n_llhttp__internal__n_start_req_48; } case 'C': { p++; - goto s_n_llhttp__internal__n_after_start_req_49; + goto s_n_llhttp__internal__n_start_req_49; } case 'D': { p++; - goto s_n_llhttp__internal__n_after_start_req_50; + goto s_n_llhttp__internal__n_start_req_50; } case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_51; + goto s_n_llhttp__internal__n_start_req_51; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_46: - s_n_llhttp__internal__n_after_start_req_46: { + case s_n_llhttp__internal__n_start_req_46: + s_n_llhttp__internal__n_start_req_46: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_46; + return s_n_llhttp__internal__n_start_req_46; } switch (*p) { case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_47; + goto s_n_llhttp__internal__n_start_req_47; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_54: - s_n_llhttp__internal__n_after_start_req_54: { + case s_n_llhttp__internal__n_start_req_54: + s_n_llhttp__internal__n_start_req_54: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_54; + return s_n_llhttp__internal__n_start_req_54; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob49, 3); p = match_seq.current; @@ -14595,19 +12868,19 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_54; + return s_n_llhttp__internal__n_start_req_54; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_56: - s_n_llhttp__internal__n_after_start_req_56: { + case s_n_llhttp__internal__n_start_req_56: + s_n_llhttp__internal__n_start_req_56: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_56; + return s_n_llhttp__internal__n_start_req_56; } switch (*p) { case 'P': { @@ -14616,18 +12889,18 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_57: - s_n_llhttp__internal__n_after_start_req_57: { + case s_n_llhttp__internal__n_start_req_57: + s_n_llhttp__internal__n_start_req_57: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_57; + return s_n_llhttp__internal__n_start_req_57; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob50, 9); p = match_seq.current; @@ -14638,63 +12911,63 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_57; + return s_n_llhttp__internal__n_start_req_57; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_55: - s_n_llhttp__internal__n_after_start_req_55: { + case s_n_llhttp__internal__n_start_req_55: + s_n_llhttp__internal__n_start_req_55: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_55; + return s_n_llhttp__internal__n_start_req_55; } switch (*p) { case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_56; + goto s_n_llhttp__internal__n_start_req_56; } case '_': { p++; - goto s_n_llhttp__internal__n_after_start_req_57; + goto s_n_llhttp__internal__n_start_req_57; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_53: - s_n_llhttp__internal__n_after_start_req_53: { + case s_n_llhttp__internal__n_start_req_53: + s_n_llhttp__internal__n_start_req_53: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_53; + return s_n_llhttp__internal__n_start_req_53; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_54; + goto s_n_llhttp__internal__n_start_req_54; } case 'T': { p++; - goto s_n_llhttp__internal__n_after_start_req_55; + goto s_n_llhttp__internal__n_start_req_55; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_58: - s_n_llhttp__internal__n_after_start_req_58: { + case s_n_llhttp__internal__n_start_req_58: + s_n_llhttp__internal__n_start_req_58: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_58; + return s_n_llhttp__internal__n_start_req_58; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob51, 4); p = match_seq.current; @@ -14705,21 +12978,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_58; + return s_n_llhttp__internal__n_start_req_58; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_59: - s_n_llhttp__internal__n_after_start_req_59: { + case s_n_llhttp__internal__n_start_req_59: + s_n_llhttp__internal__n_start_req_59: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_59; + return s_n_llhttp__internal__n_start_req_59; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob52, 7); p = match_seq.current; @@ -14730,46 +13003,46 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_59; + return s_n_llhttp__internal__n_start_req_59; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_52: - s_n_llhttp__internal__n_after_start_req_52: { + case s_n_llhttp__internal__n_start_req_52: + s_n_llhttp__internal__n_start_req_52: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_52; + return s_n_llhttp__internal__n_start_req_52; } switch (*p) { case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_53; + goto s_n_llhttp__internal__n_start_req_53; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_58; + goto s_n_llhttp__internal__n_start_req_58; } case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_59; + goto s_n_llhttp__internal__n_start_req_59; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_61: - s_n_llhttp__internal__n_after_start_req_61: { + case s_n_llhttp__internal__n_start_req_61: + s_n_llhttp__internal__n_start_req_61: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_61; + return s_n_llhttp__internal__n_start_req_61; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob53, 6); p = match_seq.current; @@ -14780,21 +13053,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_61; + return s_n_llhttp__internal__n_start_req_61; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_62: - s_n_llhttp__internal__n_after_start_req_62: { + case s_n_llhttp__internal__n_start_req_62: + s_n_llhttp__internal__n_start_req_62: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_62; + return s_n_llhttp__internal__n_start_req_62; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob54, 3); p = match_seq.current; @@ -14805,42 +13078,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_62; + return s_n_llhttp__internal__n_start_req_62; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_60: - s_n_llhttp__internal__n_after_start_req_60: { + case s_n_llhttp__internal__n_start_req_60: + s_n_llhttp__internal__n_start_req_60: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_60; + return s_n_llhttp__internal__n_start_req_60; } switch (*p) { case 'E': { p++; - goto s_n_llhttp__internal__n_after_start_req_61; + goto s_n_llhttp__internal__n_start_req_61; } case 'R': { p++; - goto s_n_llhttp__internal__n_after_start_req_62; + goto s_n_llhttp__internal__n_start_req_62; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_65: - s_n_llhttp__internal__n_after_start_req_65: { + case s_n_llhttp__internal__n_start_req_65: + s_n_llhttp__internal__n_start_req_65: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_65; + return s_n_llhttp__internal__n_start_req_65; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob55, 3); p = match_seq.current; @@ -14851,21 +13124,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_65; + return s_n_llhttp__internal__n_start_req_65; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_67: - s_n_llhttp__internal__n_after_start_req_67: { + case s_n_llhttp__internal__n_start_req_67: + s_n_llhttp__internal__n_start_req_67: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_67; + return s_n_llhttp__internal__n_start_req_67; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob56, 2); p = match_seq.current; @@ -14876,21 +13149,21 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_67; + return s_n_llhttp__internal__n_start_req_67; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_68: - s_n_llhttp__internal__n_after_start_req_68: { + case s_n_llhttp__internal__n_start_req_68: + s_n_llhttp__internal__n_start_req_68: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_68; + return s_n_llhttp__internal__n_start_req_68; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob57, 2); p = match_seq.current; @@ -14901,42 +13174,42 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_68; + return s_n_llhttp__internal__n_start_req_68; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_66: - s_n_llhttp__internal__n_after_start_req_66: { + case s_n_llhttp__internal__n_start_req_66: + s_n_llhttp__internal__n_start_req_66: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_66; + return s_n_llhttp__internal__n_start_req_66; } switch (*p) { case 'I': { p++; - goto s_n_llhttp__internal__n_after_start_req_67; + goto s_n_llhttp__internal__n_start_req_67; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_68; + goto s_n_llhttp__internal__n_start_req_68; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_69: - s_n_llhttp__internal__n_after_start_req_69: { + case s_n_llhttp__internal__n_start_req_69: + s_n_llhttp__internal__n_start_req_69: { llparse_match_t match_seq; if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_69; + return s_n_llhttp__internal__n_start_req_69; } match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob58, 8); p = match_seq.current; @@ -14947,154 +13220,139 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_after_start_req_69; + return s_n_llhttp__internal__n_start_req_69; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_64: - s_n_llhttp__internal__n_after_start_req_64: { + case s_n_llhttp__internal__n_start_req_64: + s_n_llhttp__internal__n_start_req_64: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_64; + return s_n_llhttp__internal__n_start_req_64; } switch (*p) { case 'B': { p++; - goto s_n_llhttp__internal__n_after_start_req_65; + goto s_n_llhttp__internal__n_start_req_65; } case 'L': { p++; - goto s_n_llhttp__internal__n_after_start_req_66; + goto s_n_llhttp__internal__n_start_req_66; } case 'S': { p++; - goto s_n_llhttp__internal__n_after_start_req_69; + goto s_n_llhttp__internal__n_start_req_69; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req_63: - s_n_llhttp__internal__n_after_start_req_63: { + case s_n_llhttp__internal__n_start_req_63: + s_n_llhttp__internal__n_start_req_63: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req_63; + return s_n_llhttp__internal__n_start_req_63; } switch (*p) { case 'N': { p++; - goto s_n_llhttp__internal__n_after_start_req_64; + goto s_n_llhttp__internal__n_start_req_64; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_after_start_req: - s_n_llhttp__internal__n_after_start_req: { + case s_n_llhttp__internal__n_start_req: + s_n_llhttp__internal__n_start_req: { if (p == endp) { - return s_n_llhttp__internal__n_after_start_req; + return s_n_llhttp__internal__n_start_req; } switch (*p) { case 'A': { p++; - goto s_n_llhttp__internal__n_after_start_req_1; + goto s_n_llhttp__internal__n_start_req_1; } case 'B': { p++; - goto s_n_llhttp__internal__n_after_start_req_4; + goto s_n_llhttp__internal__n_start_req_4; } case 'C': { p++; - goto s_n_llhttp__internal__n_after_start_req_5; + goto s_n_llhttp__internal__n_start_req_5; } case 'D': { p++; - goto s_n_llhttp__internal__n_after_start_req_10; + goto s_n_llhttp__internal__n_start_req_10; } case 'F': { p++; - goto s_n_llhttp__internal__n_after_start_req_14; + goto s_n_llhttp__internal__n_start_req_14; } case 'G': { p++; - goto s_n_llhttp__internal__n_after_start_req_15; + goto s_n_llhttp__internal__n_start_req_15; } case 'H': { p++; - goto s_n_llhttp__internal__n_after_start_req_18; + goto s_n_llhttp__internal__n_start_req_18; } case 'L': { p++; - goto s_n_llhttp__internal__n_after_start_req_19; + goto s_n_llhttp__internal__n_start_req_19; } case 'M': { p++; - goto s_n_llhttp__internal__n_after_start_req_22; + goto s_n_llhttp__internal__n_start_req_22; } case 'N': { p++; - goto s_n_llhttp__internal__n_after_start_req_31; + goto s_n_llhttp__internal__n_start_req_31; } case 'O': { p++; - goto s_n_llhttp__internal__n_after_start_req_32; + goto s_n_llhttp__internal__n_start_req_32; } case 'P': { p++; - goto s_n_llhttp__internal__n_after_start_req_33; + goto s_n_llhttp__internal__n_start_req_33; } case 'R': { p++; - goto s_n_llhttp__internal__n_after_start_req_46; + goto s_n_llhttp__internal__n_start_req_46; } case 'S': { p++; - goto s_n_llhttp__internal__n_after_start_req_52; + goto s_n_llhttp__internal__n_start_req_52; } case 'T': { p++; - goto s_n_llhttp__internal__n_after_start_req_60; + goto s_n_llhttp__internal__n_start_req_60; } case 'U': { p++; - goto s_n_llhttp__internal__n_after_start_req_63; + goto s_n_llhttp__internal__n_start_req_63; } default: { - goto s_n_llhttp__internal__n_error_85; + goto s_n_llhttp__internal__n_error_65; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_method_1: - s_n_llhttp__internal__n_span_start_llhttp__on_method_1: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_method_1; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_method; - goto s_n_llhttp__internal__n_after_start_req; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_invoke_llhttp__on_status_complete: s_n_llhttp__internal__n_invoke_llhttp__on_status_complete: { switch (llhttp__on_status_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_headers_start; - case 21: - goto s_n_llhttp__internal__n_pause_20; default: - goto s_n_llhttp__internal__n_error_71; + goto s_n_llhttp__internal__n_header_field_start; } /* UNREACHABLE */; abort(); @@ -15178,296 +13436,137 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_res_status_start; } default: { - goto s_n_llhttp__internal__n_error_72; + goto s_n_llhttp__internal__n_error_57; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_res_status_code_digit_3: - s_n_llhttp__internal__n_res_status_code_digit_3: { + case s_n_llhttp__internal__n_res_status_code: + s_n_llhttp__internal__n_res_status_code: { if (p == endp) { - return s_n_llhttp__internal__n_res_status_code_digit_3; + return s_n_llhttp__internal__n_res_status_code; } switch (*p) { case '0': { p++; match = 0; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '1': { p++; match = 1; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '2': { p++; match = 2; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '3': { p++; match = 3; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '4': { p++; match = 4; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '5': { p++; match = 5; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '6': { p++; match = 6; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '7': { p++; match = 7; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '8': { p++; match = 8; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; } case '9': { p++; match = 9; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_2; + goto s_n_llhttp__internal__n_invoke_mul_add_status_code; + } + default: { + goto s_n_llhttp__internal__n_res_status_code_otherwise; + } + } + /* UNREACHABLE */; + abort(); + } + case s_n_llhttp__internal__n_res_http_end: + s_n_llhttp__internal__n_res_http_end: { + if (p == endp) { + return s_n_llhttp__internal__n_res_http_end; + } + switch (*p) { + case ' ': { + p++; + goto s_n_llhttp__internal__n_invoke_update_status_code; } default: { - goto s_n_llhttp__internal__n_error_74; + goto s_n_llhttp__internal__n_error_58; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_res_status_code_digit_2: - s_n_llhttp__internal__n_res_status_code_digit_2: { + case s_n_llhttp__internal__n_res_http_minor: + s_n_llhttp__internal__n_res_http_minor: { if (p == endp) { - return s_n_llhttp__internal__n_res_status_code_digit_2; + return s_n_llhttp__internal__n_res_http_minor; } switch (*p) { case '0': { p++; match = 0; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; + goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } case '1': { p++; match = 1; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; + goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } case '2': { p++; match = 2; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; + goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } case '3': { p++; match = 3; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; + goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } case '4': { p++; match = 4; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; + goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } case '5': { p++; match = 5; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; + goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } case '6': { p++; match = 6; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; + goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } case '7': { p++; match = 7; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '8': { - p++; - match = 8; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - case '9': { - p++; - match = 9; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code_1; - } - default: { - goto s_n_llhttp__internal__n_error_76; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_res_status_code_digit_1: - s_n_llhttp__internal__n_res_status_code_digit_1: { - if (p == endp) { - return s_n_llhttp__internal__n_res_status_code_digit_1; - } - switch (*p) { - case '0': { - p++; - match = 0; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '1': { - p++; - match = 1; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '2': { - p++; - match = 2; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '3': { - p++; - match = 3; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '4': { - p++; - match = 4; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '5': { - p++; - match = 5; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '6': { - p++; - match = 6; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '7': { - p++; - match = 7; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '8': { - p++; - match = 8; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - case '9': { - p++; - match = 9; - goto s_n_llhttp__internal__n_invoke_mul_add_status_code; - } - default: { - goto s_n_llhttp__internal__n_error_78; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_res_after_version: - s_n_llhttp__internal__n_res_after_version: { - if (p == endp) { - return s_n_llhttp__internal__n_res_after_version; - } - switch (*p) { - case ' ': { - p++; - goto s_n_llhttp__internal__n_invoke_update_status_code; - } - default: { - goto s_n_llhttp__internal__n_error_79; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1: - s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1: { - switch (llhttp__on_version_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_res_after_version; - case 21: - goto s_n_llhttp__internal__n_pause_21; - default: - goto s_n_llhttp__internal__n_error_70; - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_69: - s_n_llhttp__internal__n_error_69: { - state->error = 0x9; - state->reason = "Invalid HTTP version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_error_80: - s_n_llhttp__internal__n_error_80: { - state->error = 0x9; - state->reason = "Invalid minor version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_res_http_minor: - s_n_llhttp__internal__n_res_http_minor: { - if (p == endp) { - return s_n_llhttp__internal__n_res_http_minor; - } - switch (*p) { - case '0': { - p++; - match = 0; - goto s_n_llhttp__internal__n_invoke_store_http_minor_1; - } - case '1': { - p++; - match = 1; - goto s_n_llhttp__internal__n_invoke_store_http_minor_1; - } - case '2': { - p++; - match = 2; - goto s_n_llhttp__internal__n_invoke_store_http_minor_1; - } - case '3': { - p++; - match = 3; - goto s_n_llhttp__internal__n_invoke_store_http_minor_1; - } - case '4': { - p++; - match = 4; - goto s_n_llhttp__internal__n_invoke_store_http_minor_1; - } - case '5': { - p++; - match = 5; - goto s_n_llhttp__internal__n_invoke_store_http_minor_1; - } - case '6': { - p++; - match = 6; - goto s_n_llhttp__internal__n_invoke_store_http_minor_1; - } - case '7': { - p++; - match = 7; - goto s_n_llhttp__internal__n_invoke_store_http_minor_1; + goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } case '8': { p++; @@ -15480,22 +13579,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_minor_1; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_7; + goto s_n_llhttp__internal__n_error_61; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_81: - s_n_llhttp__internal__n_error_81: { - state->error = 0x9; - state->reason = "Expected dot"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_res_http_dot: s_n_llhttp__internal__n_res_http_dot: { if (p == endp) { @@ -15507,22 +13596,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_res_http_minor; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_8; + goto s_n_llhttp__internal__n_error_62; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_error_82: - s_n_llhttp__internal__n_error_82: { - state->error = 0x9; - state->reason = "Invalid major version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_res_http_major: s_n_llhttp__internal__n_res_http_major: { if (p == endp) { @@ -15580,23 +13659,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_major_1; } default: { - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_9; + goto s_n_llhttp__internal__n_error_63; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_version_1: - s_n_llhttp__internal__n_span_start_llhttp__on_version_1: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_version_1; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_version; - goto s_n_llhttp__internal__n_res_http_major; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_start_res: s_n_llhttp__internal__n_start_res: { llparse_match_t match_seq; @@ -15609,31 +13677,18 @@ static llparse_state_t llhttp__internal__run( switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_span_start_llhttp__on_version_1; + goto s_n_llhttp__internal__n_res_http_major; } case kMatchPause: { return s_n_llhttp__internal__n_start_res; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_86; + goto s_n_llhttp__internal__n_error_66; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_llhttp__on_method_complete: - s_n_llhttp__internal__n_invoke_llhttp__on_method_complete: { - switch (llhttp__on_method_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_req_first_space_before_url; - case 21: - goto s_n_llhttp__internal__n_pause_19; - default: - goto s_n_llhttp__internal__n_error_1; - } - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_or_res_method_2: s_n_llhttp__internal__n_req_or_res_method_2: { llparse_match_t match_seq; @@ -15653,21 +13708,12 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_or_res_method_2; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_83; + goto s_n_llhttp__internal__n_error_64; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_update_type_1: - s_n_llhttp__internal__n_invoke_update_type_1: { - switch (llhttp__internal__c_update_type_1(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version_1; - } - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_req_or_res_method_3: s_n_llhttp__internal__n_req_or_res_method_3: { llparse_match_t match_seq; @@ -15680,13 +13726,13 @@ static llparse_state_t llhttp__internal__run( switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_span_end_llhttp__on_method_1; + goto s_n_llhttp__internal__n_invoke_update_type_1; } case kMatchPause: { return s_n_llhttp__internal__n_req_or_res_method_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_83; + goto s_n_llhttp__internal__n_error_64; } } /* UNREACHABLE */; @@ -15707,7 +13753,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_or_res_method_3; } default: { - goto s_n_llhttp__internal__n_error_83; + goto s_n_llhttp__internal__n_error_64; } } /* UNREACHABLE */; @@ -15724,23 +13770,12 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_or_res_method_1; } default: { - goto s_n_llhttp__internal__n_error_83; + goto s_n_llhttp__internal__n_error_64; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_span_start_llhttp__on_method: - s_n_llhttp__internal__n_span_start_llhttp__on_method: { - if (p == endp) { - return s_n_llhttp__internal__n_span_start_llhttp__on_method; - } - state->_span_pos0 = (void*) p; - state->_span_cb0 = llhttp__on_method; - goto s_n_llhttp__internal__n_req_or_res_method; - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_start_req_or_res: s_n_llhttp__internal__n_start_req_or_res: { if (p == endp) { @@ -15748,7 +13783,7 @@ static llparse_state_t llhttp__internal__run( } switch (*p) { case 'H': { - goto s_n_llhttp__internal__n_span_start_llhttp__on_method; + goto s_n_llhttp__internal__n_req_or_res_method; } default: { goto s_n_llhttp__internal__n_invoke_update_type_2; @@ -15761,7 +13796,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_type: { switch (llhttp__internal__c_load_type(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_span_start_llhttp__on_method_1; + goto s_n_llhttp__internal__n_start_req; case 2: goto s_n_llhttp__internal__n_start_res; default: @@ -15770,15 +13805,6 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_invoke_update_finish: - s_n_llhttp__internal__n_invoke_update_finish: { - switch (llhttp__internal__c_update_finish(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_invoke_llhttp__on_message_begin; - } - /* UNREACHABLE */; - abort(); - } case s_n_llhttp__internal__n_start: s_n_llhttp__internal__n_start: { if (p == endp) { @@ -15794,7 +13820,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_start; } default: { - goto s_n_llhttp__internal__n_invoke_load_initial_message_completed; + goto s_n_llhttp__internal__n_invoke_update_finish; } } /* UNREACHABLE */; @@ -15804,7 +13830,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */ abort(); } - s_n_llhttp__internal__n_error_64: { + s_n_llhttp__internal__n_error_49: { state->error = 0x7; state->reason = "Invalid characters in url"; state->error_pos = (const char*) p; @@ -15821,26 +13847,10 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_update_initial_message_completed: { - switch (llhttp__internal__c_update_initial_message_completed(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_invoke_update_finish_2; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_update_content_length: { - switch (llhttp__internal__c_update_content_length(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_invoke_update_initial_message_completed; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_test_lenient_flags_1: { - switch (llhttp__internal__c_test_lenient_flags_1(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags: { + switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_update_initial_message_completed; + goto s_n_llhttp__internal__n_invoke_update_finish_2; default: goto s_n_llhttp__internal__n_closed; } @@ -15850,12 +13860,12 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_update_finish_1: { switch (llhttp__internal__c_update_finish_1(state, p, endp)) { default: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_1; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_11: { + s_n_llhttp__internal__n_pause_5: { state->error = 0x15; state->reason = "on_message_complete pause"; state->error_pos = (const char*) p; @@ -15864,7 +13874,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_24: { + s_n_llhttp__internal__n_error_10: { state->error = 0x12; state->reason = "`on_message_complete` callback error"; state->error_pos = (const char*) p; @@ -15873,7 +13883,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_13: { + s_n_llhttp__internal__n_pause_7: { state->error = 0x15; state->reason = "on_chunk_complete pause"; state->error_pos = (const char*) p; @@ -15882,7 +13892,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_27: { + s_n_llhttp__internal__n_error_13: { state->error = 0x14; state->reason = "`on_chunk_complete` callback error"; state->error_pos = (const char*) p; @@ -15896,455 +13906,174 @@ static llparse_state_t llhttp__internal__run( case 0: goto s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_2; case 21: - goto s_n_llhttp__internal__n_pause_13; + goto s_n_llhttp__internal__n_pause_7; default: - goto s_n_llhttp__internal__n_error_27; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_26: { - state->error = 0x4; - state->reason = "Content-Length can't be present with Transfer-Encoding"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_2: { - state->error = 0x15; - state->reason = "on_message_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_pause_1; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_6: { - state->error = 0x12; - state->reason = "`on_message_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_1: { - switch (llhttp__on_message_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_pause_1; - case 21: - goto s_n_llhttp__internal__n_pause_2; - default: - goto s_n_llhttp__internal__n_error_6; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_22: { - state->error = 0xc; - state->reason = "Chunk size overflow"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_3: { - state->error = 0x15; - state->reason = "on_chunk_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_content_length_1; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_8: { - state->error = 0x14; - state->reason = "`on_chunk_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete: { - switch (llhttp__on_chunk_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_invoke_update_content_length_1; - case 21: - goto s_n_llhttp__internal__n_pause_3; - default: - goto s_n_llhttp__internal__n_error_8; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_body: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_body(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_data_almost_done; - return s_error; - } - goto s_n_llhttp__internal__n_chunk_data_almost_done; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_or_flags: { - switch (llhttp__internal__c_or_flags(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_header_field_start; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_4: { - state->error = 0x15; - state->reason = "on_chunk_header pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_is_equal_content_length; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_7: { - state->error = 0x13; - state->reason = "`on_chunk_header` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_header: { - switch (llhttp__on_chunk_header(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_invoke_is_equal_content_length; - case 21: - goto s_n_llhttp__internal__n_pause_4; - default: - goto s_n_llhttp__internal__n_error_7; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_9: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_10: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_5: { - state->error = 0x15; - state->reason = "on_chunk_extension_name pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_size_almost_done; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_11: { - state->error = 0x22; - state->reason = "`on_chunk_extension_name` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_name(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_6: { - state->error = 0x15; - state->reason = "on_chunk_extension_name pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_extensions; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_12: { - state->error = 0x22; - state->reason = "`on_chunk_extension_name` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_1: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_name(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_1; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_7: { - state->error = 0x15; - state->reason = "on_chunk_extension_value pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_size_almost_done; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_14: { - state->error = 0x23; - state->reason = "`on_chunk_extension_value` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete; - return s_error; + goto s_n_llhttp__internal__n_error_13; } - p++; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_16: { - state->error = 0x2; - state->reason = "Invalid character in chunk extensions quote value"; + s_n_llhttp__internal__n_error_12: { + state->error = 0x4; + state->reason = "Content-Length can't be present with Transfer-Encoding"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_8: { + s_n_llhttp__internal__n_pause_2: { state->error = 0x15; - state->reason = "on_chunk_extension_value pause"; + state->reason = "on_message_complete pause"; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_extension_quoted_value_done; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_pause_1; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_15: { - state->error = 0x23; - state->reason = "`on_chunk_extension_value` callback error"; + s_n_llhttp__internal__n_error_3: { + state->error = 0x12; + state->reason = "`on_message_complete` callback error"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_1: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1; - return s_error; + s_n_llhttp__internal__n_invoke_llhttp__on_message_complete_1: { + switch (llhttp__on_message_complete(state, p, endp)) { + case 0: + goto s_n_llhttp__internal__n_pause_1; + case 21: + goto s_n_llhttp__internal__n_pause_2; + default: + goto s_n_llhttp__internal__n_error_3; } - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_1; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_2: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_17; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_error_17; + s_n_llhttp__internal__n_error_8: { + state->error = 0xc; + state->reason = "Chunk size overflow"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_9: { + s_n_llhttp__internal__n_pause_3: { state->error = 0x15; - state->reason = "on_chunk_extension_value pause"; + state->reason = "on_chunk_complete pause"; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_size_otherwise; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_content_length; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_18: { - state->error = 0x23; - state->reason = "`on_chunk_extension_value` callback error"; + s_n_llhttp__internal__n_error_5: { + state->error = 0x14; + state->reason = "`on_chunk_complete` callback error"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_3: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2; - return s_error; + s_n_llhttp__internal__n_invoke_llhttp__on_chunk_complete: { + switch (llhttp__on_chunk_complete(state, p, endp)) { + case 0: + goto s_n_llhttp__internal__n_invoke_update_content_length; + case 21: + goto s_n_llhttp__internal__n_pause_3; + default: + goto s_n_llhttp__internal__n_error_5; } - p++; - goto s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_value_complete_2; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_value_4: { + s_n_llhttp__internal__n_span_end_llhttp__on_body: { const unsigned char* start; int err; start = state->_span_pos0; state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_value(state, start, p); + err = llhttp__on_body(state, start, p); if (err != 0) { state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_19; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_data_almost_done; return s_error; } - p++; - goto s_n_llhttp__internal__n_error_19; + goto s_n_llhttp__internal__n_chunk_data_almost_done; + /* UNREACHABLE */; + abort(); + } + s_n_llhttp__internal__n_invoke_or_flags: { + switch (llhttp__internal__c_or_flags(state, p, endp)) { + default: + goto s_n_llhttp__internal__n_header_field_start; + } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_10: { + s_n_llhttp__internal__n_pause_4: { state->error = 0x15; - state->reason = "on_chunk_extension_name pause"; + state->reason = "on_chunk_header pause"; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_extension_value; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_is_equal_content_length; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_13: { - state->error = 0x22; - state->reason = "`on_chunk_extension_name` callback error"; + s_n_llhttp__internal__n_error_4: { + state->error = 0x13; + state->reason = "`on_chunk_header` callback error"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_llhttp__on_chunk_extension_name_complete_2: { - switch (llhttp__on_chunk_extension_name_complete(state, p, endp)) { + s_n_llhttp__internal__n_invoke_llhttp__on_chunk_header: { + switch (llhttp__on_chunk_header(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_chunk_extension_value; + goto s_n_llhttp__internal__n_invoke_is_equal_content_length; case 21: - goto s_n_llhttp__internal__n_pause_10; + goto s_n_llhttp__internal__n_pause_4; default: - goto s_n_llhttp__internal__n_error_13; + goto s_n_llhttp__internal__n_error_4; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_2: { + s_n_llhttp__internal__n_span_end_llhttp__on_chunk_parameters: { const unsigned char* start; int err; start = state->_span_pos0; state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_name(state, start, p); + err = llhttp__on_chunk_parameters(state, start, p); if (err != 0) { state->error = err; state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_chunk_size_almost_done; return s_error; } p++; - goto s_n_llhttp__internal__n_span_start_llhttp__on_chunk_extension_value; + goto s_n_llhttp__internal__n_chunk_size_almost_done; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_chunk_extension_name_3: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_chunk_extension_name(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_20; - return s_error; - } - p++; - goto s_n_llhttp__internal__n_error_20; + s_n_llhttp__internal__n_error_6: { + state->error = 0x2; + state->reason = "Invalid character in chunk parameters"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_21: { + s_n_llhttp__internal__n_error_7: { state->error = 0xc; state->reason = "Invalid character in chunk size"; state->error_pos = (const char*) p; @@ -16356,14 +14085,14 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_mul_add_content_length: { switch (llhttp__internal__c_mul_add_content_length(state, p, endp, match)) { case 1: - goto s_n_llhttp__internal__n_error_22; + goto s_n_llhttp__internal__n_error_8; default: goto s_n_llhttp__internal__n_chunk_size; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_23: { + s_n_llhttp__internal__n_error_9: { state->error = 0xc; state->reason = "Invalid character in chunk size"; state->error_pos = (const char*) p; @@ -16397,7 +14126,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_25: { + s_n_llhttp__internal__n_error_11: { state->error = 0xf; state->reason = "Request has invalid `Transfer-Encoding`"; state->error_pos = (const char*) p; @@ -16415,7 +14144,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_5: { + s_n_llhttp__internal__n_error_2: { state->error = 0x12; state->reason = "`on_message_complete` callback error"; state->error_pos = (const char*) p; @@ -16431,7 +14160,7 @@ static llparse_state_t llhttp__internal__run( case 21: goto s_n_llhttp__internal__n_pause; default: - goto s_n_llhttp__internal__n_error_5; + goto s_n_llhttp__internal__n_error_2; } /* UNREACHABLE */; abort(); @@ -16460,7 +14189,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_12: { + s_n_llhttp__internal__n_pause_6: { state->error = 0x15; state->reason = "Paused by on_headers_complete"; state->error_pos = (const char*) p; @@ -16469,7 +14198,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_4: { + s_n_llhttp__internal__n_error_1: { state->error = 0x11; state->reason = "User callback error"; state->error_pos = (const char*) p; @@ -16487,9 +14216,9 @@ static llparse_state_t llhttp__internal__run( case 2: goto s_n_llhttp__internal__n_invoke_update_upgrade; case 21: - goto s_n_llhttp__internal__n_pause_12; + goto s_n_llhttp__internal__n_pause_6; default: - goto s_n_llhttp__internal__n_error_4; + goto s_n_llhttp__internal__n_error_1; } /* UNREACHABLE */; abort(); @@ -16502,10 +14231,10 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_2: { - switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_1: { + switch (llhttp__internal__c_test_lenient_flags_1(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_error_26; + goto s_n_llhttp__internal__n_error_12; default: goto s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete; } @@ -16515,7 +14244,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_test_flags_1: { switch (llhttp__internal__c_test_flags_1(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_2; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_1; default: goto s_n_llhttp__internal__n_invoke_llhttp__before_headers_complete; } @@ -16542,16 +14271,16 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_28; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_14; return s_error; } p++; - goto s_n_llhttp__internal__n_error_28; + goto s_n_llhttp__internal__n_error_14; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_3: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_2: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_field_colon_discard_ws; default: @@ -16560,7 +14289,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_31: { + s_n_llhttp__internal__n_error_16: { state->error = 0xa; state->reason = "Invalid header value char"; state->error_pos = (const char*) p; @@ -16569,17 +14298,17 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_5: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_4: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_value_discard_ws; default: - goto s_n_llhttp__internal__n_error_31; + goto s_n_llhttp__internal__n_error_16; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_33: { + s_n_llhttp__internal__n_error_17: { state->error = 0xb; state->reason = "Empty Content-Length"; state->error_pos = (const char*) p; @@ -16588,24 +14317,6 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_14: { - state->error = 0x15; - state->reason = "on_header_value_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_field_start; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_32: { - state->error = 0x1d; - state->reason = "`on_header_value_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_span_end_llhttp__on_header_value: { const unsigned char* start; int err; @@ -16682,14 +14393,14 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_header_state: { switch (llhttp__internal__c_load_header_state(state, p, endp)) { case 2: - goto s_n_llhttp__internal__n_error_33; + goto s_n_llhttp__internal__n_error_17; default: goto s_n_llhttp__internal__n_invoke_load_header_state_1; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_30: { + s_n_llhttp__internal__n_error_15: { state->error = 0xa; state->reason = "Invalid header value char"; state->error_pos = (const char*) p; @@ -16698,17 +14409,17 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_4: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_3: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_value_discard_lws; default: - goto s_n_llhttp__internal__n_error_30; + goto s_n_llhttp__internal__n_error_15; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_34: { + s_n_llhttp__internal__n_error_18: { state->error = 0x2; state->reason = "Expected LF after CR"; state->error_pos = (const char*) p; @@ -16717,12 +14428,12 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_6: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_5: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_value_discard_lws; default: - goto s_n_llhttp__internal__n_error_34; + goto s_n_llhttp__internal__n_error_18; } /* UNREACHABLE */; abort(); @@ -16745,7 +14456,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_35: { + s_n_llhttp__internal__n_error_19: { state->error = 0xa; state->reason = "Unexpected whitespace after header value"; state->error_pos = (const char*) p; @@ -16754,12 +14465,12 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_7: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_6: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_invoke_load_header_state_3; default: - goto s_n_llhttp__internal__n_error_35; + goto s_n_llhttp__internal__n_error_19; } /* UNREACHABLE */; abort(); @@ -16820,7 +14531,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_36: { + s_n_llhttp__internal__n_error_20: { state->error = 0x3; state->reason = "Missing expected LF after header value"; state->error_pos = (const char*) p; @@ -16892,15 +14603,15 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_37; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_21; return s_error; } - goto s_n_llhttp__internal__n_error_37; + goto s_n_llhttp__internal__n_error_21; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_8: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_7: { + switch (llhttp__internal__c_test_lenient_flags_2(state, p, endp)) { case 1: goto s_n_llhttp__internal__n_header_value_lenient; default: @@ -17007,10 +14718,10 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_39; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_23; return s_error; } - goto s_n_llhttp__internal__n_error_39; + goto s_n_llhttp__internal__n_error_23; /* UNREACHABLE */; abort(); } @@ -17042,14 +14753,14 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_40; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_24; return s_error; } - goto s_n_llhttp__internal__n_error_40; + goto s_n_llhttp__internal__n_error_24; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_38: { + s_n_llhttp__internal__n_error_22: { state->error = 0x4; state->reason = "Duplicate Content-Length"; state->error_pos = (const char*) p; @@ -17063,7 +14774,7 @@ static llparse_state_t llhttp__internal__run( case 0: goto s_n_llhttp__internal__n_header_value_content_length; default: - goto s_n_llhttp__internal__n_error_38; + goto s_n_llhttp__internal__n_error_22; } /* UNREACHABLE */; abort(); @@ -17078,11 +14789,11 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_42; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_26; return s_error; } p++; - goto s_n_llhttp__internal__n_error_42; + goto s_n_llhttp__internal__n_error_26; /* UNREACHABLE */; abort(); } @@ -17104,16 +14815,16 @@ static llparse_state_t llhttp__internal__run( if (err != 0) { state->error = err; state->error_pos = (const char*) (p + 1); - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_41; + state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_25; return s_error; } p++; - goto s_n_llhttp__internal__n_error_41; + goto s_n_llhttp__internal__n_error_25; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_9: { - switch (llhttp__internal__c_test_lenient_flags_9(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_8: { + switch (llhttp__internal__c_test_lenient_flags_8(state, p, endp)) { case 0: goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_7; default: @@ -17125,7 +14836,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_type_1: { switch (llhttp__internal__c_load_type(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_9; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_8; default: goto s_n_llhttp__internal__n_header_value_te_chunked; } @@ -17156,8 +14867,8 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_10: { - switch (llhttp__internal__c_test_lenient_flags_9(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_9: { + switch (llhttp__internal__c_test_lenient_flags_8(state, p, endp)) { case 0: goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_8; default: @@ -17169,7 +14880,7 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_type_2: { switch (llhttp__internal__c_load_type(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_10; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_9; default: goto s_n_llhttp__internal__n_invoke_or_flags_17; } @@ -17218,24 +14929,6 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_15: { - state->error = 0x15; - state->reason = "on_header_field_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_header_value_discard_ws; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_29: { - state->error = 0x1c; - state->reason = "`on_header_field_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_span_end_llhttp__on_header_field_1: { const unsigned char* start; int err; @@ -17272,7 +14965,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_43: { + s_n_llhttp__internal__n_error_27: { state->error = 0xa; state->reason = "Invalid header token"; state->error_pos = (const char*) p; @@ -17293,63 +14986,22 @@ static llparse_state_t llhttp__internal__run( switch (llhttp__internal__c_store_header_state(state, p, endp, match)) { default: goto s_n_llhttp__internal__n_header_field_colon; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_update_header_state_11: { - switch (llhttp__internal__c_update_header_state_1(state, p, endp)) { - default: - goto s_n_llhttp__internal__n_header_field_general; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_3: { - state->error = 0x1e; - state->reason = "Unexpected space after start line"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_test_lenient_flags: { - switch (llhttp__internal__c_test_lenient_flags(state, p, endp)) { - case 1: - goto s_n_llhttp__internal__n_header_field_start; - default: - goto s_n_llhttp__internal__n_error_3; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_16: { - state->error = 0x15; - state->reason = "on_url_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_headers_start; - return s_error; + } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_2: { - state->error = 0x1a; - state->reason = "`on_url_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; + s_n_llhttp__internal__n_invoke_update_header_state_11: { + switch (llhttp__internal__c_update_header_state_1(state, p, endp)) { + default: + goto s_n_llhttp__internal__n_header_field_general; + } /* UNREACHABLE */; abort(); } s_n_llhttp__internal__n_invoke_llhttp__on_url_complete: { switch (llhttp__on_url_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_headers_start; - case 21: - goto s_n_llhttp__internal__n_pause_16; default: - goto s_n_llhttp__internal__n_error_2; + goto s_n_llhttp__internal__n_header_field_start; } /* UNREACHABLE */; abort(); @@ -17387,7 +15039,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_44: { + s_n_llhttp__internal__n_error_28: { state->error = 0x7; state->reason = "Expected CRLF"; state->error_pos = (const char*) p; @@ -17413,7 +15065,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_50: { + s_n_llhttp__internal__n_error_33: { state->error = 0x17; state->reason = "Pause on PRI/Upgrade"; state->error_pos = (const char*) p; @@ -17422,7 +15074,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_51: { + s_n_llhttp__internal__n_error_34: { state->error = 0x9; state->reason = "Expected HTTP/2 Connection Preface"; state->error_pos = (const char*) p; @@ -17431,7 +15083,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_49: { + s_n_llhttp__internal__n_error_32: { state->error = 0x9; state->reason = "Expected CRLF after version"; state->error_pos = (const char*) p; @@ -17440,90 +15092,84 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_17: { - state->error = 0x15; - state->reason = "on_version_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_load_method_1; - return s_error; + s_n_llhttp__internal__n_invoke_load_method_1: { + switch (llhttp__internal__c_load_method(state, p, endp)) { + case 34: + goto s_n_llhttp__internal__n_req_pri_upgrade; + default: + goto s_n_llhttp__internal__n_req_http_complete; + } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_48: { - state->error = 0x21; - state->reason = "`on_version_complete` callback error"; + s_n_llhttp__internal__n_error_31: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_1: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_version_complete; - return s_error; - } - goto s_n_llhttp__internal__n_invoke_llhttp__on_version_complete; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_version: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_47; - return s_error; - } - goto s_n_llhttp__internal__n_error_47; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_invoke_load_http_minor: { switch (llhttp__internal__c_load_http_minor(state, p, endp)) { case 9: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version; + goto s_n_llhttp__internal__n_error_31; } /* UNREACHABLE */; abort(); } + s_n_llhttp__internal__n_error_35: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; + /* UNREACHABLE */; + abort(); + } s_n_llhttp__internal__n_invoke_load_http_minor_1: { switch (llhttp__internal__c_load_http_minor(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; case 1: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version; + goto s_n_llhttp__internal__n_error_35; } /* UNREACHABLE */; abort(); } + s_n_llhttp__internal__n_error_36: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; + /* UNREACHABLE */; + abort(); + } s_n_llhttp__internal__n_invoke_load_http_minor_2: { switch (llhttp__internal__c_load_http_minor(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version; + goto s_n_llhttp__internal__n_error_36; } /* UNREACHABLE */; abort(); } + s_n_llhttp__internal__n_error_30: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; + /* UNREACHABLE */; + abort(); + } s_n_llhttp__internal__n_invoke_load_http_major: { switch (llhttp__internal__c_load_http_major(state, p, endp)) { case 0: @@ -17533,15 +15179,15 @@ static llparse_state_t llhttp__internal__run( case 2: goto s_n_llhttp__internal__n_invoke_load_http_minor_2; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version; + goto s_n_llhttp__internal__n_error_30; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_11: { - switch (llhttp__internal__c_test_lenient_flags_11(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_10: { + switch (llhttp__internal__c_test_lenient_flags_10(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; default: goto s_n_llhttp__internal__n_invoke_load_http_major; } @@ -17551,42 +15197,26 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_store_http_minor: { switch (llhttp__internal__c_store_http_minor(state, p, endp, match)) { default: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_11; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_10; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_2: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_52; - return s_error; - } - goto s_n_llhttp__internal__n_error_52; + s_n_llhttp__internal__n_error_37: { + state->error = 0x9; + state->reason = "Invalid minor version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_3: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_53; - return s_error; - } - goto s_n_llhttp__internal__n_error_53; + s_n_llhttp__internal__n_error_38: { + state->error = 0x9; + state->reason = "Expected dot"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } @@ -17598,24 +15228,16 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_4: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_54; - return s_error; - } - goto s_n_llhttp__internal__n_error_54; + s_n_llhttp__internal__n_error_39: { + state->error = 0x9; + state->reason = "Invalid major version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_46: { + s_n_llhttp__internal__n_error_29: { state->error = 0x8; state->reason = "Invalid method for HTTP/x.x request"; state->error_pos = (const char*) p; @@ -17627,82 +15249,82 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_method: { switch (llhttp__internal__c_load_method(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 1: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 2: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 3: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 4: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 5: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 6: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 7: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 8: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 9: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 10: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 11: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 12: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 13: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 14: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 15: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 16: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 17: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 18: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 19: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 20: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 21: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 22: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 23: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 24: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 25: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 26: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 27: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 28: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 29: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 30: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 31: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 32: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 33: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 34: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; default: - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_29; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_57: { + s_n_llhttp__internal__n_error_42: { state->error = 0x8; state->reason = "Expected HTTP/"; state->error_pos = (const char*) p; @@ -17711,7 +15333,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_55: { + s_n_llhttp__internal__n_error_40: { state->error = 0x8; state->reason = "Expected SOURCE method for ICE/x.x request"; state->error_pos = (const char*) p; @@ -17723,14 +15345,14 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_method_2: { switch (llhttp__internal__c_load_method(state, p, endp)) { case 33: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; default: - goto s_n_llhttp__internal__n_error_55; + goto s_n_llhttp__internal__n_error_40; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_56: { + s_n_llhttp__internal__n_error_41: { state->error = 0x8; state->reason = "Invalid method for RTSP/x.x request"; state->error_pos = (const char*) p; @@ -17742,65 +15364,43 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_load_method_3: { switch (llhttp__internal__c_load_method(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 3: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 6: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 35: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 36: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 37: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 38: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 39: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 40: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 41: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 42: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 43: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 44: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; case 45: - goto s_n_llhttp__internal__n_span_start_llhttp__on_version; + goto s_n_llhttp__internal__n_req_http_major; default: - goto s_n_llhttp__internal__n_error_56; + goto s_n_llhttp__internal__n_error_41; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_18: { - state->error = 0x15; - state->reason = "on_url_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_req_http_start; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_45: { - state->error = 0x1a; - state->reason = "`on_url_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_invoke_llhttp__on_url_complete_1: { switch (llhttp__on_url_complete(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_req_http_start; - case 21: - goto s_n_llhttp__internal__n_pause_18; default: - goto s_n_llhttp__internal__n_error_45; + goto s_n_llhttp__internal__n_req_http_start; } /* UNREACHABLE */; abort(); @@ -17873,7 +15473,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_58: { + s_n_llhttp__internal__n_error_43: { state->error = 0x7; state->reason = "Invalid char in url fragment start"; state->error_pos = (const char*) p; @@ -17933,7 +15533,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_59: { + s_n_llhttp__internal__n_error_44: { state->error = 0x7; state->reason = "Invalid char in url query"; state->error_pos = (const char*) p; @@ -17942,7 +15542,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_60: { + s_n_llhttp__internal__n_error_45: { state->error = 0x7; state->reason = "Invalid char in url path"; state->error_pos = (const char*) p; @@ -18053,7 +15653,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_61: { + s_n_llhttp__internal__n_error_46: { state->error = 0x7; state->reason = "Double @ in url"; state->error_pos = (const char*) p; @@ -18062,7 +15662,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_62: { + s_n_llhttp__internal__n_error_47: { state->error = 0x7; state->reason = "Unexpected char in url server"; state->error_pos = (const char*) p; @@ -18071,158 +15671,97 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_63: { + s_n_llhttp__internal__n_error_48: { state->error = 0x7; state->reason = "Unexpected char in url server"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_65: { - state->error = 0x7; - state->reason = "Unexpected char in url schema"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_66: { - state->error = 0x7; - state->reason = "Unexpected char in url schema"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_67: { - state->error = 0x7; - state->reason = "Unexpected start char in url"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_is_equal_method: { - switch (llhttp__internal__c_is_equal_method(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_span_start_llhttp__on_url_1; - default: - goto s_n_llhttp__internal__n_span_start_llhttp__on_url; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_68: { - state->error = 0x6; - state->reason = "Expected space after method"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_22: { - state->error = 0x15; - state->reason = "on_method_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_req_first_space_before_url; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_84: { - state->error = 0x20; - state->reason = "`on_method_complete` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_method_2: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_method(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1; - return s_error; - } - goto s_n_llhttp__internal__n_invoke_llhttp__on_method_complete_1; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_store_method_1: { - switch (llhttp__internal__c_store_method(state, p, endp, match)) { - default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_method_2; - } + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_85: { - state->error = 0x6; - state->reason = "Invalid method encountered"; + s_n_llhttp__internal__n_error_50: { + state->error = 0x7; + state->reason = "Unexpected char in url schema"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_77: { - state->error = 0xd; - state->reason = "Invalid status code"; + s_n_llhttp__internal__n_error_51: { + state->error = 0x7; + state->reason = "Unexpected char in url schema"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_75: { - state->error = 0xd; - state->reason = "Invalid status code"; + s_n_llhttp__internal__n_error_52: { + state->error = 0x7; + state->reason = "Unexpected start char in url"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_73: { - state->error = 0xd; - state->reason = "Invalid status code"; + s_n_llhttp__internal__n_invoke_is_equal_method: { + switch (llhttp__internal__c_is_equal_method(state, p, endp)) { + case 0: + goto s_n_llhttp__internal__n_span_start_llhttp__on_url_1; + default: + goto s_n_llhttp__internal__n_span_start_llhttp__on_url; + } + /* UNREACHABLE */; + abort(); + } + s_n_llhttp__internal__n_error_53: { + state->error = 0x6; + state->reason = "Expected space after method"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_20: { - state->error = 0x15; - state->reason = "on_status_complete pause"; + s_n_llhttp__internal__n_invoke_store_method_1: { + switch (llhttp__internal__c_store_method(state, p, endp, match)) { + default: + goto s_n_llhttp__internal__n_req_first_space_before_url; + } + /* UNREACHABLE */; + abort(); + } + s_n_llhttp__internal__n_error_65: { + state->error = 0x6; + state->reason = "Invalid method encountered"; state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_headers_start; + state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_71: { - state->error = 0x1b; - state->reason = "`on_status_complete` callback error"; + s_n_llhttp__internal__n_error_56: { + state->error = 0xd; + state->reason = "Response overflow"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } + s_n_llhttp__internal__n_invoke_mul_add_status_code: { + switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) { + case 1: + goto s_n_llhttp__internal__n_error_56; + default: + goto s_n_llhttp__internal__n_res_status_code; + } + /* UNREACHABLE */; + abort(); + } s_n_llhttp__internal__n_span_end_llhttp__on_status: { const unsigned char* start; int err; @@ -18259,7 +15798,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_72: { + s_n_llhttp__internal__n_error_57: { state->error = 0xd; state->reason = "Invalid response status"; state->error_pos = (const char*) p; @@ -18268,161 +15807,88 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_mul_add_status_code_2: { - switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) { - case 1: - goto s_n_llhttp__internal__n_error_73; + s_n_llhttp__internal__n_invoke_update_status_code: { + switch (llhttp__internal__c_update_status_code(state, p, endp)) { default: - goto s_n_llhttp__internal__n_res_status_code_otherwise; + goto s_n_llhttp__internal__n_res_status_code; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_74: { - state->error = 0xd; - state->reason = "Invalid status code"; + s_n_llhttp__internal__n_error_58: { + state->error = 0x9; + state->reason = "Expected space after version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_mul_add_status_code_1: { - switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) { - case 1: - goto s_n_llhttp__internal__n_error_75; - default: - goto s_n_llhttp__internal__n_res_status_code_digit_3; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_76: { - state->error = 0xd; - state->reason = "Invalid status code"; + s_n_llhttp__internal__n_error_55: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_mul_add_status_code: { - switch (llhttp__internal__c_mul_add_status_code(state, p, endp, match)) { - case 1: - goto s_n_llhttp__internal__n_error_77; + s_n_llhttp__internal__n_invoke_load_http_minor_3: { + switch (llhttp__internal__c_load_http_minor(state, p, endp)) { + case 9: + goto s_n_llhttp__internal__n_res_http_end; default: - goto s_n_llhttp__internal__n_res_status_code_digit_2; + goto s_n_llhttp__internal__n_error_55; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_78: { - state->error = 0xd; - state->reason = "Invalid status code"; + s_n_llhttp__internal__n_error_59: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_update_status_code: { - switch (llhttp__internal__c_update_status_code(state, p, endp)) { + s_n_llhttp__internal__n_invoke_load_http_minor_4: { + switch (llhttp__internal__c_load_http_minor(state, p, endp)) { + case 0: + goto s_n_llhttp__internal__n_res_http_end; + case 1: + goto s_n_llhttp__internal__n_res_http_end; default: - goto s_n_llhttp__internal__n_res_status_code_digit_1; + goto s_n_llhttp__internal__n_error_59; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_79: { + s_n_llhttp__internal__n_error_60: { state->error = 0x9; - state->reason = "Expected space after version"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_pause_21: { - state->error = 0x15; - state->reason = "on_version_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_res_after_version; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_70: { - state->error = 0x21; - state->reason = "`on_version_complete` callback error"; + state->reason = "Invalid HTTP version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_6: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1; - return s_error; - } - goto s_n_llhttp__internal__n_invoke_llhttp__on_version_complete_1; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_span_end_llhttp__on_version_5: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_69; - return s_error; - } - goto s_n_llhttp__internal__n_error_69; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_load_http_minor_3: { - switch (llhttp__internal__c_load_http_minor(state, p, endp)) { - case 9: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; - default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_5; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_load_http_minor_4: { + s_n_llhttp__internal__n_invoke_load_http_minor_5: { switch (llhttp__internal__c_load_http_minor(state, p, endp)) { case 0: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; - case 1: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; + goto s_n_llhttp__internal__n_res_http_end; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_5; + goto s_n_llhttp__internal__n_error_60; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_load_http_minor_5: { - switch (llhttp__internal__c_load_http_minor(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; - default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_5; - } + s_n_llhttp__internal__n_error_54: { + state->error = 0x9; + state->reason = "Invalid HTTP version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } @@ -18435,15 +15901,15 @@ static llparse_state_t llhttp__internal__run( case 2: goto s_n_llhttp__internal__n_invoke_load_http_minor_5; default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_5; + goto s_n_llhttp__internal__n_error_54; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_test_lenient_flags_12: { - switch (llhttp__internal__c_test_lenient_flags_11(state, p, endp)) { + s_n_llhttp__internal__n_invoke_test_lenient_flags_11: { + switch (llhttp__internal__c_test_lenient_flags_10(state, p, endp)) { case 1: - goto s_n_llhttp__internal__n_span_end_llhttp__on_version_6; + goto s_n_llhttp__internal__n_res_http_end; default: goto s_n_llhttp__internal__n_invoke_load_http_major_1; } @@ -18453,42 +15919,26 @@ static llparse_state_t llhttp__internal__run( s_n_llhttp__internal__n_invoke_store_http_minor_1: { switch (llhttp__internal__c_store_http_minor(state, p, endp, match)) { default: - goto s_n_llhttp__internal__n_invoke_test_lenient_flags_12; + goto s_n_llhttp__internal__n_invoke_test_lenient_flags_11; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_7: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_80; - return s_error; - } - goto s_n_llhttp__internal__n_error_80; + s_n_llhttp__internal__n_error_61: { + state->error = 0x9; + state->reason = "Invalid minor version"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_8: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_81; - return s_error; - } - goto s_n_llhttp__internal__n_error_81; + s_n_llhttp__internal__n_error_62: { + state->error = 0x9; + state->reason = "Expected dot"; + state->error_pos = (const char*) p; + state->_current = (void*) (intptr_t) s_error; + return s_error; /* UNREACHABLE */; abort(); } @@ -18500,71 +15950,28 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_version_9: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_version(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_82; - return s_error; - } - goto s_n_llhttp__internal__n_error_82; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_86: { - state->error = 0x8; - state->reason = "Expected HTTP/"; + s_n_llhttp__internal__n_error_63: { + state->error = 0x9; + state->reason = "Invalid major version"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_19: { - state->error = 0x15; - state->reason = "on_method_complete pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_req_first_space_before_url; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_1: { - state->error = 0x20; - state->reason = "`on_method_complete` callback error"; + s_n_llhttp__internal__n_error_66: { + state->error = 0x8; + state->reason = "Expected HTTP/"; state->error_pos = (const char*) p; state->_current = (void*) (intptr_t) s_error; return s_error; /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_method: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_method(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_llhttp__on_method_complete; - return s_error; - } - goto s_n_llhttp__internal__n_invoke_llhttp__on_method_complete; - /* UNREACHABLE */; - abort(); - } s_n_llhttp__internal__n_invoke_update_type: { switch (llhttp__internal__c_update_type(state, p, endp)) { default: - goto s_n_llhttp__internal__n_span_end_llhttp__on_method; + goto s_n_llhttp__internal__n_req_first_space_before_url; } /* UNREACHABLE */; abort(); @@ -18577,7 +15984,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_83: { + s_n_llhttp__internal__n_error_64: { state->error = 0x8; state->reason = "Invalid word encountered"; state->error_pos = (const char*) p; @@ -18586,32 +15993,23 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_span_end_llhttp__on_method_1: { - const unsigned char* start; - int err; - - start = state->_span_pos0; - state->_span_pos0 = NULL; - err = llhttp__on_method(state, start, p); - if (err != 0) { - state->error = err; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_type_1; - return s_error; + s_n_llhttp__internal__n_invoke_update_type_1: { + switch (llhttp__internal__c_update_type_1(state, p, endp)) { + default: + goto s_n_llhttp__internal__n_res_http_major; } - goto s_n_llhttp__internal__n_invoke_update_type_1; /* UNREACHABLE */; abort(); } s_n_llhttp__internal__n_invoke_update_type_2: { switch (llhttp__internal__c_update_type(state, p, endp)) { default: - goto s_n_llhttp__internal__n_span_start_llhttp__on_method_1; + goto s_n_llhttp__internal__n_start_req; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_23: { + s_n_llhttp__internal__n_pause_8: { state->error = 0x15; state->reason = "on_message_begin pause"; state->error_pos = (const char*) p; @@ -18634,49 +16032,17 @@ static llparse_state_t llhttp__internal__run( case 0: goto s_n_llhttp__internal__n_invoke_load_type; case 21: - goto s_n_llhttp__internal__n_pause_23; + goto s_n_llhttp__internal__n_pause_8; default: goto s_n_llhttp__internal__n_error; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_pause_24: { - state->error = 0x15; - state->reason = "on_reset pause"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_invoke_update_finish; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_error_87: { - state->error = 0x1f; - state->reason = "`on_reset` callback error"; - state->error_pos = (const char*) p; - state->_current = (void*) (intptr_t) s_error; - return s_error; - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_llhttp__on_reset: { - switch (llhttp__on_reset(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_invoke_update_finish; - case 21: - goto s_n_llhttp__internal__n_pause_24; - default: - goto s_n_llhttp__internal__n_error_87; - } - /* UNREACHABLE */; - abort(); - } - s_n_llhttp__internal__n_invoke_load_initial_message_completed: { - switch (llhttp__internal__c_load_initial_message_completed(state, p, endp)) { - case 1: - goto s_n_llhttp__internal__n_invoke_llhttp__on_reset; + s_n_llhttp__internal__n_invoke_update_finish: { + switch (llhttp__internal__c_update_finish(state, p, endp)) { default: - goto s_n_llhttp__internal__n_invoke_update_finish; + goto s_n_llhttp__internal__n_invoke_llhttp__on_message_begin; } /* UNREACHABLE */; abort();