diff --git a/third-party/llhttp/include/llhttp.h b/third-party/llhttp/include/llhttp.h index 4bf4d8b0..e3a98d07 100644 --- a/third-party/llhttp/include/llhttp.h +++ b/third-party/llhttp/include/llhttp.h @@ -2,8 +2,8 @@ #define INCLUDE_LLHTTP_H_ #define LLHTTP_VERSION_MAJOR 2 -#define LLHTTP_VERSION_MINOR 1 -#define LLHTTP_VERSION_PATCH 3 +#define LLHTTP_VERSION_MINOR 2 +#define LLHTTP_VERSION_PATCH 0 #ifndef LLHTTP_STRICT_MODE # define LLHTTP_STRICT_MODE 0 @@ -145,7 +145,18 @@ enum llhttp_method { HTTP_LINK = 31, HTTP_UNLINK = 32, HTTP_SOURCE = 33, - HTTP_PRI = 34 + HTTP_PRI = 34, + HTTP_DESCRIBE = 35, + HTTP_ANNOUNCE = 36, + HTTP_SETUP = 37, + HTTP_PLAY = 38, + HTTP_PAUSE = 39, + HTTP_TEARDOWN = 40, + HTTP_GET_PARAMETER = 41, + HTTP_SET_PARAMETER = 42, + HTTP_REDIRECT = 43, + HTTP_RECORD = 44, + HTTP_FLUSH = 45 }; typedef enum llhttp_method llhttp_method_t; @@ -212,6 +223,17 @@ typedef enum llhttp_method llhttp_method_t; XX(32, UNLINK, UNLINK) \ XX(33, SOURCE, SOURCE) \ XX(34, PRI, PRI) \ + XX(35, DESCRIBE, DESCRIBE) \ + XX(36, ANNOUNCE, ANNOUNCE) \ + XX(37, SETUP, SETUP) \ + XX(38, PLAY, PLAY) \ + XX(39, PAUSE, PAUSE) \ + XX(40, TEARDOWN, TEARDOWN) \ + XX(41, GET_PARAMETER, GET_PARAMETER) \ + XX(42, SET_PARAMETER, SET_PARAMETER) \ + XX(43, REDIRECT, REDIRECT) \ + XX(44, RECORD, RECORD) \ + XX(45, FLUSH, FLUSH) \ @@ -266,7 +288,12 @@ struct llhttp_settings_s { llhttp_cb on_chunk_complete; }; -/* Initialize the parser with specific type and user settings */ +/* Initialize the parser with specific type and user settings. + * + * NOTE: lifetime of `settings` has to be at least the same as the lifetime of + * the `parser` here. In practice, `settings` has to be either a static + * variable or be allocated with `malloc`, `new`, etc. + */ void llhttp_init(llhttp_t* parser, llhttp_type_t type, const llhttp_settings_t* settings); diff --git a/third-party/llhttp/src/llhttp.c b/third-party/llhttp/src/llhttp.c index acc35479..a9e88214 100644 --- a/third-party/llhttp/src/llhttp.c +++ b/third-party/llhttp/src/llhttp.c @@ -24,164 +24,194 @@ typedef int (*llhttp__internal__span_cb)( llhttp__internal_t*, const char*, const char*); static const unsigned char llparse_blob0[] = { - 'C', 'L' -}; -static const unsigned char llparse_blob1[] = { 0xd, 0xa }; -static const unsigned char llparse_blob2[] = { +static const unsigned char llparse_blob1[] = { 'o', 'n' }; -static const unsigned char llparse_blob3[] = { +static const unsigned char llparse_blob2[] = { 'e', 'c', 't', 'i', 'o', 'n' }; -static const unsigned char llparse_blob4[] = { +static const unsigned char llparse_blob3[] = { 'l', 'o', 's', 'e' }; -static const unsigned char llparse_blob5[] = { +static const unsigned char llparse_blob4[] = { 'e', 'e', 'p', '-', 'a', 'l', 'i', 'v', 'e' }; -static const unsigned char llparse_blob6[] = { +static const unsigned char llparse_blob5[] = { 'p', 'g', 'r', 'a', 'd', 'e' }; -static const unsigned char llparse_blob7[] = { +static const unsigned char llparse_blob6[] = { 'c', 'h', 'u', 'n', 'k', 'e', 'd' }; #ifdef __SSE4_2__ -static const unsigned char ALIGN(16) llparse_blob8[] = { +static const unsigned char ALIGN(16) llparse_blob7[] = { 0x9, 0x9, ' ', '~', 0x80, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 }; #endif /* __SSE4_2__ */ #ifdef __SSE4_2__ -static const unsigned char ALIGN(16) llparse_blob9[] = { +static const unsigned char ALIGN(16) llparse_blob8[] = { '!', '!', '#', '\'', '*', '+', '-', '.', '0', '9', 'A', 'Z', '^', 'z', '|', '|' }; #endif /* __SSE4_2__ */ #ifdef __SSE4_2__ -static const unsigned char ALIGN(16) llparse_blob10[] = { +static const unsigned char ALIGN(16) llparse_blob9[] = { '~', '~', 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 }; #endif /* __SSE4_2__ */ -static const unsigned char llparse_blob11[] = { +static const unsigned char llparse_blob10[] = { 'e', 'n', 't', '-', 'l', 'e', 'n', 'g', 't', 'h' }; -static const unsigned char llparse_blob12[] = { +static const unsigned char llparse_blob11[] = { 'r', 'o', 'x', 'y', '-', 'c', 'o', 'n', 'n', 'e', 'c', 't', 'i', 'o', 'n' }; -static const unsigned char llparse_blob13[] = { +static const unsigned char llparse_blob12[] = { 'r', 'a', 'n', 's', 'f', 'e', 'r', '-', 'e', 'n', 'c', 'o', 'd', 'i', 'n', 'g' }; -static const unsigned char llparse_blob14[] = { +static const unsigned char llparse_blob13[] = { 'p', 'g', 'r', 'a', 'd', 'e' }; -static const unsigned char llparse_blob15[] = { +static const unsigned char llparse_blob14[] = { 'T', 'T', 'P', '/' }; -static const unsigned char llparse_blob16[] = { +static const unsigned char llparse_blob15[] = { 'C', 'E', '/' }; +static const unsigned char llparse_blob16[] = { + 'T', 'S', 'P', '/' +}; static const unsigned char llparse_blob17[] = { - 'I', 'N', 'D' + 'N', 'O', 'U', 'N', 'C', 'E' }; static const unsigned char llparse_blob18[] = { - 'E', 'C', 'K', 'O', 'U', 'T' + 'I', 'N', 'D' }; static const unsigned char llparse_blob19[] = { - 'N', 'E', 'C', 'T' + 'E', 'C', 'K', 'O', 'U', 'T' }; static const unsigned char llparse_blob20[] = { - 'E', 'L', 'E', 'T', 'E' + 'N', 'E', 'C', 'T' }; static const unsigned char llparse_blob21[] = { - 'E', 'T' + 'E', 'T', 'E' }; static const unsigned char llparse_blob22[] = { - 'E', 'A', 'D' + 'C', 'R', 'I', 'B', 'E' }; static const unsigned char llparse_blob23[] = { - 'N', 'K' + 'L', 'U', 'S', 'H' }; static const unsigned char llparse_blob24[] = { - 'C', 'K' + 'E', 'T' }; static const unsigned char llparse_blob25[] = { - 'S', 'E', 'A', 'R', 'C', 'H' + 'P', 'A', 'R', 'A', 'M', 'E', 'T', 'E', 'R' }; static const unsigned char llparse_blob26[] = { - 'R', 'G', 'E' + 'E', 'A', 'D' }; static const unsigned char llparse_blob27[] = { - 'C', 'T', 'I', 'V', 'I', 'T', 'Y' + 'N', 'K' }; static const unsigned char llparse_blob28[] = { - 'L', 'E', 'N', 'D', 'A', 'R' + 'C', 'K' }; static const unsigned char llparse_blob29[] = { - 'V', 'E' + 'S', 'E', 'A', 'R', 'C', 'H' }; static const unsigned char llparse_blob30[] = { - 'O', 'T', 'I', 'F', 'Y' + 'R', 'G', 'E' }; static const unsigned char llparse_blob31[] = { - 'P', 'T', 'I', 'O', 'N', 'S' + 'C', 'T', 'I', 'V', 'I', 'T', 'Y' }; static const unsigned char llparse_blob32[] = { - 'T', 'C', 'H' + 'L', 'E', 'N', 'D', 'A', 'R' }; static const unsigned char llparse_blob33[] = { - 'S', 'T' + 'V', 'E' }; static const unsigned char llparse_blob34[] = { - 'I', 'N', 'D' + 'O', 'T', 'I', 'F', 'Y' }; static const unsigned char llparse_blob35[] = { - 'A', 'T', 'C', 'H' + 'P', 'T', 'I', 'O', 'N', 'S' }; static const unsigned char llparse_blob36[] = { - 'G', 'E' + 'C', 'H' }; static const unsigned char llparse_blob37[] = { - 'I', 'N', 'D' + 'S', 'E' }; static const unsigned char llparse_blob38[] = { - 'O', 'R', 'T' + 'A', 'Y' }; static const unsigned char llparse_blob39[] = { - 'A', 'R', 'C', 'H' + 'S', 'T' }; static const unsigned char llparse_blob40[] = { - 'U', 'R', 'C', 'E' + 'I', 'N', 'D' }; static const unsigned char llparse_blob41[] = { - 'B', 'S', 'C', 'R', 'I', 'B', 'E' + 'A', 'T', 'C', 'H' }; static const unsigned char llparse_blob42[] = { - 'R', 'A', 'C', 'E' + 'G', 'E' }; static const unsigned char llparse_blob43[] = { 'I', 'N', 'D' }; static const unsigned char llparse_blob44[] = { - 'N', 'K' + 'O', 'R', 'D' }; static const unsigned char llparse_blob45[] = { - 'C', 'K' + 'I', 'R', 'E', 'C', 'T' }; static const unsigned char llparse_blob46[] = { - 'U', 'B', 'S', 'C', 'R', 'I', 'B', 'E' + 'O', 'R', 'T' }; static const unsigned char llparse_blob47[] = { - 'H', 'T', 'T', 'P', '/' + 'R', 'C', 'H' }; static const unsigned char llparse_blob48[] = { - 'A', 'D' + 'P', 'A', 'R', 'A', 'M', 'E', 'T', 'E', 'R' }; static const unsigned char llparse_blob49[] = { + 'U', 'R', 'C', 'E' +}; +static const unsigned char llparse_blob50[] = { + 'B', 'S', 'C', 'R', 'I', 'B', 'E' +}; +static const unsigned char llparse_blob51[] = { + 'A', 'R', 'D', 'O', 'W', 'N' +}; +static const unsigned char llparse_blob52[] = { + 'A', 'C', 'E' +}; +static const unsigned char llparse_blob53[] = { + 'I', 'N', 'D' +}; +static const unsigned char llparse_blob54[] = { + 'N', 'K' +}; +static const unsigned char llparse_blob55[] = { + 'C', 'K' +}; +static const unsigned char llparse_blob56[] = { + 'U', 'B', 'S', 'C', 'R', 'I', 'B', 'E' +}; +static const unsigned char llparse_blob57[] = { + 'H', 'T', 'T', 'P', '/' +}; +static const unsigned char llparse_blob58[] = { + 'A', 'D' +}; +static const unsigned char llparse_blob59[] = { 'T', 'P', '/' }; @@ -365,6 +395,7 @@ enum llparse_state_e { s_n_llhttp__internal__n_req_http_major, 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, s_n_llhttp__internal__n_req_http_start, s_n_llhttp__internal__n_url_to_http, s_n_llhttp__internal__n_url_skip_to_http, @@ -389,56 +420,75 @@ 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_start_req_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_7, - s_n_llhttp__internal__n_start_req_5, - s_n_llhttp__internal__n_start_req_3, s_n_llhttp__internal__n_start_req_8, s_n_llhttp__internal__n_start_req_9, - s_n_llhttp__internal__n_start_req_10, + 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_15, + 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_17, - s_n_llhttp__internal__n_start_req_22, - s_n_llhttp__internal__n_start_req_14, 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_30, - s_n_llhttp__internal__n_start_req_29, - s_n_llhttp__internal__n_start_req_28, + 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_33, - s_n_llhttp__internal__n_start_req_25, s_n_llhttp__internal__n_start_req_37, s_n_llhttp__internal__n_start_req_38, - s_n_llhttp__internal__n_start_req_36, - s_n_llhttp__internal__n_start_req_35, - s_n_llhttp__internal__n_start_req_40, - s_n_llhttp__internal__n_start_req_41, s_n_llhttp__internal__n_start_req_42, - s_n_llhttp__internal__n_start_req_39, s_n_llhttp__internal__n_start_req_43, - s_n_llhttp__internal__n_start_req_46, - s_n_llhttp__internal__n_start_req_48, - s_n_llhttp__internal__n_start_req_49, - s_n_llhttp__internal__n_start_req_47, - s_n_llhttp__internal__n_start_req_50, + 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_res_line_almost_done, s_n_llhttp__internal__n_res_status, @@ -829,6 +879,13 @@ int llhttp__internal__c_or_flags_17( return 0; } +int llhttp__internal__c_load_method( + llhttp__internal_t* state, + const unsigned char* p, + const unsigned char* endp) { + return state->method; +} + int llhttp__internal__c_store_http_major( llhttp__internal_t* state, const unsigned char* p, @@ -847,13 +904,6 @@ int llhttp__internal__c_store_http_minor( return 0; } -int llhttp__internal__c_is_equal_method_1( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - return state->method == 33; -} - int llhttp__internal__c_update_status_code( llhttp__internal_t* state, const unsigned char* p, @@ -995,7 +1045,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_chunk_data_almost_done; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob1, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob0, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -1650,7 +1700,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_value_connection_1; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob4, 4); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob3, 4); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -1674,7 +1724,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_value_connection_2; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob5, 9); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob4, 9); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -1698,7 +1748,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_value_connection_3; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob6, 6); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob5, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -1930,7 +1980,7 @@ static llparse_state_t llhttp__internal__run( /* Load input */ input = _mm_loadu_si128((__m128i const*) p); - ranges = _mm_loadu_si128((__m128i const*) llparse_blob8); + ranges = _mm_loadu_si128((__m128i const*) llparse_blob7); /* Find first character that does not match `ranges` */ match_len = _mm_cmpestri(ranges, 6, @@ -2003,7 +2053,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_value_te_chunked; } - match_seq = llparse__match_sequence_to_lower_unsafe(state, p, endp, llparse_blob7, 7); + match_seq = llparse__match_sequence_to_lower_unsafe(state, p, endp, llparse_blob6, 7); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -2108,7 +2158,7 @@ static llparse_state_t llhttp__internal__run( /* Load input */ input = _mm_loadu_si128((__m128i const*) p); - ranges = _mm_loadu_si128((__m128i const*) llparse_blob9); + ranges = _mm_loadu_si128((__m128i const*) llparse_blob8); /* Find first character that does not match `ranges` */ match_len = _mm_cmpestri(ranges, 16, @@ -2120,7 +2170,7 @@ static llparse_state_t llhttp__internal__run( p += match_len; goto s_n_llhttp__internal__n_header_field_general; } - ranges = _mm_loadu_si128((__m128i const*) llparse_blob10); + ranges = _mm_loadu_si128((__m128i const*) llparse_blob9); /* Find first character that does not match `ranges` */ match_len = _mm_cmpestri(ranges, 2, @@ -2174,7 +2224,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_3; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob3, 6); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob2, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -2199,7 +2249,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_4; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob11, 10); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob10, 10); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -2245,7 +2295,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_1; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob2, 2); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob1, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -2269,7 +2319,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_5; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob12, 15); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob11, 15); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -2294,7 +2344,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_6; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob13, 16); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob12, 16); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -2319,7 +2369,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_7; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob14, 6); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob13, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -2493,7 +2543,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_header_field_start; } default: { - goto s_n_llhttp__internal__n_error_28; + goto s_n_llhttp__internal__n_error_29; } } /* UNREACHABLE */; @@ -2514,7 +2564,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_http_end_1; } default: { - goto s_n_llhttp__internal__n_error_28; + goto s_n_llhttp__internal__n_error_29; } } /* UNREACHABLE */; @@ -2577,7 +2627,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_minor; } default: { - goto s_n_llhttp__internal__n_error_29; + goto s_n_llhttp__internal__n_error_30; } } /* UNREACHABLE */; @@ -2594,7 +2644,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_http_minor; } default: { - goto s_n_llhttp__internal__n_error_30; + goto s_n_llhttp__internal__n_error_31; } } /* UNREACHABLE */; @@ -2657,7 +2707,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_major; } default: { - goto s_n_llhttp__internal__n_error_31; + goto s_n_llhttp__internal__n_error_32; } } /* UNREACHABLE */; @@ -2670,18 +2720,18 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_req_http_start_1; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob15, 4); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob14, 4); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_req_http_major; + goto s_n_llhttp__internal__n_invoke_load_method; } case kMatchPause: { return s_n_llhttp__internal__n_req_http_start_1; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_33; + goto s_n_llhttp__internal__n_error_35; } } /* UNREACHABLE */; @@ -2694,18 +2744,42 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_req_http_start_2; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob16, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob15, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_invoke_is_equal_method_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_req_http_start_2; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_33; + goto s_n_llhttp__internal__n_error_35; + } + } + /* UNREACHABLE */; + abort(); + } + case s_n_llhttp__internal__n_req_http_start_3: + s_n_llhttp__internal__n_req_http_start_3: { + llparse_match_t match_seq; + + if (p == endp) { + return s_n_llhttp__internal__n_req_http_start_3; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob16, 4); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + goto s_n_llhttp__internal__n_invoke_load_method_2; + } + case kMatchPause: { + return s_n_llhttp__internal__n_req_http_start_3; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_35; } } /* UNREACHABLE */; @@ -2729,8 +2803,12 @@ static llparse_state_t llhttp__internal__run( p++; goto s_n_llhttp__internal__n_req_http_start_2; } + case 'R': { + p++; + goto s_n_llhttp__internal__n_req_http_start_3; + } default: { - goto s_n_llhttp__internal__n_error_33; + goto s_n_llhttp__internal__n_error_35; } } /* UNREACHABLE */; @@ -2821,7 +2899,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_fragment; } default: { - goto s_n_llhttp__internal__n_error_34; + goto s_n_llhttp__internal__n_error_36; } } /* UNREACHABLE */; @@ -2882,7 +2960,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_35; + goto s_n_llhttp__internal__n_error_37; } } /* UNREACHABLE */; @@ -2920,7 +2998,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_query; } default: { - goto s_n_llhttp__internal__n_error_36; + goto s_n_llhttp__internal__n_error_38; } } /* UNREACHABLE */; @@ -3045,10 +3123,10 @@ static llparse_state_t llhttp__internal__run( } case 8: { p++; - goto s_n_llhttp__internal__n_error_37; + goto s_n_llhttp__internal__n_error_39; } default: { - goto s_n_llhttp__internal__n_error_38; + goto s_n_llhttp__internal__n_error_40; } } /* UNREACHABLE */; @@ -3107,7 +3185,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_39; + goto s_n_llhttp__internal__n_error_41; } } /* UNREACHABLE */; @@ -3124,7 +3202,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_server; } default: { - goto s_n_llhttp__internal__n_error_41; + goto s_n_llhttp__internal__n_error_43; } } /* UNREACHABLE */; @@ -3142,7 +3220,7 @@ static llparse_state_t llhttp__internal__run( } case 10: { p++; - goto s_n_llhttp__internal__n_error_40; + goto s_n_llhttp__internal__n_error_42; } case 12: { p++; @@ -3150,18 +3228,18 @@ static llparse_state_t llhttp__internal__run( } case 13: { p++; - goto s_n_llhttp__internal__n_error_40; + goto s_n_llhttp__internal__n_error_42; } case ' ': { p++; - goto s_n_llhttp__internal__n_error_40; + goto s_n_llhttp__internal__n_error_42; } case '/': { p++; goto s_n_llhttp__internal__n_url_schema_delim_1; } default: { - goto s_n_llhttp__internal__n_error_41; + goto s_n_llhttp__internal__n_error_43; } } /* UNREACHABLE */; @@ -3207,7 +3285,7 @@ static llparse_state_t llhttp__internal__run( } case 2: { p++; - goto s_n_llhttp__internal__n_error_40; + goto s_n_llhttp__internal__n_error_42; } case 3: { goto s_n_llhttp__internal__n_span_end_stub_schema; @@ -3217,7 +3295,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_schema; } default: { - goto s_n_llhttp__internal__n_error_42; + goto s_n_llhttp__internal__n_error_44; } } /* UNREACHABLE */; @@ -3253,7 +3331,7 @@ static llparse_state_t llhttp__internal__run( } case 2: { p++; - goto s_n_llhttp__internal__n_error_40; + goto s_n_llhttp__internal__n_error_42; } case 3: { goto s_n_llhttp__internal__n_span_start_stub_path_2; @@ -3262,7 +3340,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_schema; } default: { - goto s_n_llhttp__internal__n_error_43; + goto s_n_llhttp__internal__n_error_45; } } /* UNREACHABLE */; @@ -3360,32 +3438,7 @@ 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_44; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_1: - s_n_llhttp__internal__n_start_req_1: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_1; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob0, 2); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 19; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_1; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_46; } } /* UNREACHABLE */; @@ -3393,24 +3446,63 @@ static llparse_state_t llhttp__internal__run( } case s_n_llhttp__internal__n_start_req_2: s_n_llhttp__internal__n_start_req_2: { - llparse_match_t match_seq; - if (p == endp) { return s_n_llhttp__internal__n_start_req_2; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob17, 3); + switch (*p) { + case 'L': { + p++; + match = 19; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_3; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob17, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 16; + match = 36; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_start_req_2; + return s_n_llhttp__internal__n_start_req_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_1; + } + switch (*p) { + case 'C': { + p++; + goto s_n_llhttp__internal__n_start_req_2; + } + case 'N': { + p++; + goto s_n_llhttp__internal__n_start_req_3; + } + default: { + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3423,19 +3515,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_4; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob18, 6); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob18, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 22; + match = 16; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_4; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3448,79 +3540,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_6; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob19, 4); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob19, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 5; + match = 22; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_6; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_7; - } - switch (*p) { - case 'Y': { - p++; - match = 8; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - default: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_5; - } - switch (*p) { - case 'N': { - p++; - goto s_n_llhttp__internal__n_start_req_6; - } - case 'P': { - p++; - goto s_n_llhttp__internal__n_start_req_7; - } - default: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_3: - s_n_llhttp__internal__n_start_req_3: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_3; - } - switch (*p) { - case 'H': { - p++; - goto s_n_llhttp__internal__n_start_req_4; - } - case 'O': { - p++; - goto s_n_llhttp__internal__n_start_req_5; - } - default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3533,19 +3565,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_8; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob20, 5); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob20, 4); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 0; + match = 5; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_8; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3553,49 +3585,59 @@ static llparse_state_t llhttp__internal__run( } case s_n_llhttp__internal__n_start_req_9: s_n_llhttp__internal__n_start_req_9: { - llparse_match_t match_seq; - if (p == endp) { return s_n_llhttp__internal__n_start_req_9; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob21, 2); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { + switch (*p) { + case 'Y': { p++; - match = 1; + match = 8; goto s_n_llhttp__internal__n_invoke_store_method_1; } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_9; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + default: { + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_10: - s_n_llhttp__internal__n_start_req_10: { - llparse_match_t match_seq; - + 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_start_req_10; + return s_n_llhttp__internal__n_start_req_7; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob22, 3); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { + switch (*p) { + case 'N': { p++; - match = 2; - goto s_n_llhttp__internal__n_invoke_store_method_1; + goto s_n_llhttp__internal__n_start_req_8; } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_10; + case 'P': { + p++; + goto s_n_llhttp__internal__n_start_req_9; } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_5; + } + switch (*p) { + case 'H': { + p++; + goto s_n_llhttp__internal__n_start_req_6; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_7; + } + default: { + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3608,19 +3650,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_12; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob23, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob21, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 31; + match = 0; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_12; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3633,19 +3675,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_13; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob24, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob22, 5); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 9; + match = 35; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_13; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3657,16 +3699,101 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_start_req_11; } switch (*p) { - case 'I': { + case 'L': { p++; goto s_n_llhttp__internal__n_start_req_12; } - case 'O': { + case 'S': { p++; goto s_n_llhttp__internal__n_start_req_13; } default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_10; + } + switch (*p) { + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_11; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_14; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob23, 4); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 45; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_14; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_17; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob25, 9); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 41; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_17; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_16; + } + switch (*p) { + case '_': { + p++; + goto s_n_llhttp__internal__n_start_req_17; + } + default: { + match = 1; + goto s_n_llhttp__internal__n_invoke_store_method_1; } } /* UNREACHABLE */; @@ -3679,44 +3806,18 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_15; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob25, 6); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob24, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 24; - goto s_n_llhttp__internal__n_invoke_store_method_1; + goto s_n_llhttp__internal__n_start_req_16; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_15; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_16: - s_n_llhttp__internal__n_start_req_16: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_16; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob26, 3); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 23; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_16; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3729,19 +3830,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_18; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob27, 7); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob26, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 21; + match = 2; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_18; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3754,19 +3855,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_20; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob28, 6); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob27, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 30; + match = 31; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_20; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3774,17 +3875,24 @@ static llparse_state_t llhttp__internal__run( } 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_start_req_21; } - switch (*p) { - case 'L': { + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob28, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { p++; - match = 10; + match = 9; goto s_n_llhttp__internal__n_invoke_store_method_1; } - default: { - goto s_n_llhttp__internal__n_error_53; + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_21; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3796,7 +3904,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_start_req_19; } switch (*p) { - case 'A': { + case 'I': { p++; goto s_n_llhttp__internal__n_start_req_20; } @@ -3805,82 +3913,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_start_req_21; } default: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_17: - s_n_llhttp__internal__n_start_req_17: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_17; - } - switch (*p) { - case 'A': { - p++; - goto s_n_llhttp__internal__n_start_req_18; - } - case 'C': { - p++; - goto s_n_llhttp__internal__n_start_req_19; - } - default: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_22: - s_n_llhttp__internal__n_start_req_22: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_22; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob29, 2); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 11; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_22; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_14: - s_n_llhttp__internal__n_start_req_14: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_14; - } - switch (*p) { - case '-': { - p++; - goto s_n_llhttp__internal__n_start_req_15; - } - case 'E': { - p++; - goto s_n_llhttp__internal__n_start_req_16; - } - case 'K': { - p++; - goto s_n_llhttp__internal__n_start_req_17; - } - case 'O': { - p++; - goto s_n_llhttp__internal__n_start_req_22; - } - default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3893,19 +3926,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_23; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob30, 5); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob29, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 25; + match = 24; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_23; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3918,19 +3951,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_24; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob31, 6); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob30, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 6; + match = 23; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_24; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -3943,115 +3976,44 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_26; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob32, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob31, 7); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 28; + match = 21; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_26; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_27: - s_n_llhttp__internal__n_start_req_27: { + 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_start_req_27; + return s_n_llhttp__internal__n_start_req_28; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob33, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob32, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 3; + match = 30; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_start_req_27; + return s_n_llhttp__internal__n_start_req_28; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_31; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob34, 3); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 12; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_31; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_32; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob35, 4); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 13; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_32; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_30: - s_n_llhttp__internal__n_start_req_30: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_30; - } - switch (*p) { - case 'F': { - p++; - goto s_n_llhttp__internal__n_start_req_31; - } - case 'P': { - p++; - goto s_n_llhttp__internal__n_start_req_32; - } - default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4063,81 +4025,34 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_start_req_29; } switch (*p) { - case 'P': { + case 'L': { p++; - goto s_n_llhttp__internal__n_start_req_30; + match = 10; + goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_28: - s_n_llhttp__internal__n_start_req_28: { + 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_start_req_28; + return s_n_llhttp__internal__n_start_req_27; } switch (*p) { - case 'I': { + case 'A': { p++; - match = 34; - goto s_n_llhttp__internal__n_invoke_store_method_1; + goto s_n_llhttp__internal__n_start_req_28; } case 'O': { p++; goto s_n_llhttp__internal__n_start_req_29; } default: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_34: - s_n_llhttp__internal__n_start_req_34: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_34; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob36, 2); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 29; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_34; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_33; - } - switch (*p) { - case 'R': { - p++; - goto s_n_llhttp__internal__n_start_req_34; - } - case 'T': { - p++; - match = 4; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4153,20 +4068,187 @@ static llparse_state_t llhttp__internal__run( p++; goto s_n_llhttp__internal__n_start_req_26; } - case 'O': { + case 'C': { p++; goto s_n_llhttp__internal__n_start_req_27; } - case 'R': { + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_30; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob33, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_start_req_28; + match = 11; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_30; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_22; + } + switch (*p) { + case '-': { + p++; + goto s_n_llhttp__internal__n_start_req_23; + } + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_24; + } + case 'K': { + p++; + goto s_n_llhttp__internal__n_start_req_25; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_30; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_31; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob34, 5); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 25; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_31; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_32; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob35, 6); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 6; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_32; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_35; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob36, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 28; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_35; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_36; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob37, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 39; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_36; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_34; + } + switch (*p) { + case 'T': { + p++; + goto s_n_llhttp__internal__n_start_req_35; } case 'U': { p++; - goto s_n_llhttp__internal__n_start_req_33; + goto s_n_llhttp__internal__n_start_req_36; } default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4179,19 +4261,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_37; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob37, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob38, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 17; + match = 38; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_37; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4204,107 +4286,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_38; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob38, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob39, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 20; + match = 3; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_38; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_36: - s_n_llhttp__internal__n_start_req_36: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_36; - } - switch (*p) { - case 'B': { - p++; - goto s_n_llhttp__internal__n_start_req_37; - } - case 'P': { - p++; - goto s_n_llhttp__internal__n_start_req_38; - } - default: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_35: - s_n_llhttp__internal__n_start_req_35: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_35; - } - switch (*p) { - case 'E': { - p++; - goto s_n_llhttp__internal__n_start_req_36; - } - default: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_40: - s_n_llhttp__internal__n_start_req_40: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_40; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob39, 4); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 14; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_40; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_41: - s_n_llhttp__internal__n_start_req_41: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_41; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob40, 4); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 33; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_41; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4317,44 +4311,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_42; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob41, 7); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob40, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 26; + match = 12; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_42; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_39; - } - switch (*p) { - case 'E': { - p++; - goto s_n_llhttp__internal__n_start_req_40; - } - case 'O': { - p++; - goto s_n_llhttp__internal__n_start_req_41; - } - case 'U': { - p++; - goto s_n_llhttp__internal__n_start_req_42; - } - default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4367,44 +4336,159 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_43; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob42, 4); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob41, 4); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 7; + match = 13; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_43; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_46: - s_n_llhttp__internal__n_start_req_46: { + 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_start_req_41; + } + switch (*p) { + case 'F': { + p++; + goto s_n_llhttp__internal__n_start_req_42; + } + case 'P': { + p++; + goto s_n_llhttp__internal__n_start_req_43; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_40; + } + switch (*p) { + case 'P': { + p++; + goto s_n_llhttp__internal__n_start_req_41; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_39; + } + switch (*p) { + case 'I': { + p++; + match = 34; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_40; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_46; + return s_n_llhttp__internal__n_start_req_45; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob43, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob42, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 18; + match = 29; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_start_req_46; + return s_n_llhttp__internal__n_start_req_45; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_44; + } + switch (*p) { + case 'R': { + p++; + goto s_n_llhttp__internal__n_start_req_45; + } + case 'T': { + p++; + match = 4; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_33; + } + switch (*p) { + case 'A': { + p++; + goto s_n_llhttp__internal__n_start_req_34; + } + case 'L': { + p++; + goto s_n_llhttp__internal__n_start_req_37; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_38; + } + case 'R': { + p++; + goto s_n_llhttp__internal__n_start_req_39; + } + case 'U': { + p++; + goto s_n_llhttp__internal__n_start_req_44; + } + default: { + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4417,19 +4501,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_48; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob44, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob43, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 32; + match = 17; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_48; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4442,40 +4526,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_49; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob45, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob44, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 15; + match = 44; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_49; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_47; - } - switch (*p) { - case 'I': { - p++; - goto s_n_llhttp__internal__n_start_req_48; - } - case 'O': { - p++; - goto s_n_llhttp__internal__n_start_req_49; - } - default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4488,7 +4551,455 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_50; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob46, 8); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob45, 5); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 43; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_50; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_51; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob46, 3); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 20; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_51; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_47; + } + switch (*p) { + case 'B': { + p++; + goto s_n_llhttp__internal__n_start_req_48; + } + case 'C': { + p++; + goto s_n_llhttp__internal__n_start_req_49; + } + case 'D': { + p++; + goto s_n_llhttp__internal__n_start_req_50; + } + case 'P': { + p++; + goto s_n_llhttp__internal__n_start_req_51; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_46; + } + switch (*p) { + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_47; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_54; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob47, 3); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 14; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_54; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_56; + } + switch (*p) { + case 'P': { + p++; + match = 37; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_57; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob48, 9); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 42; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_57; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_55; + } + switch (*p) { + case 'U': { + p++; + goto s_n_llhttp__internal__n_start_req_56; + } + case '_': { + p++; + goto s_n_llhttp__internal__n_start_req_57; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_53; + } + switch (*p) { + case 'A': { + p++; + goto s_n_llhttp__internal__n_start_req_54; + } + case 'T': { + p++; + goto s_n_llhttp__internal__n_start_req_55; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_58; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob49, 4); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 33; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_58; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_59; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob50, 7); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 26; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_59; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_52; + } + switch (*p) { + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_53; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_58; + } + case 'U': { + p++; + goto s_n_llhttp__internal__n_start_req_59; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_61; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob51, 6); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 40; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_61; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_62; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob52, 3); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 7; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_62; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_60; + } + switch (*p) { + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_61; + } + case 'R': { + p++; + goto s_n_llhttp__internal__n_start_req_62; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_65; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob53, 3); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 18; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_65; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_67; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob54, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 32; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_67; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_68; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob55, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 15; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_68; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_66; + } + switch (*p) { + case 'I': { + p++; + goto s_n_llhttp__internal__n_start_req_67; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_68; + } + default: { + goto s_n_llhttp__internal__n_error_55; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_69; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob56, 8); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -4497,52 +5008,52 @@ 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_start_req_50; + return s_n_llhttp__internal__n_start_req_69; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_45: - s_n_llhttp__internal__n_start_req_45: { + 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_start_req_45; + return s_n_llhttp__internal__n_start_req_64; } switch (*p) { case 'B': { p++; - goto s_n_llhttp__internal__n_start_req_46; + goto s_n_llhttp__internal__n_start_req_65; } case 'L': { p++; - goto s_n_llhttp__internal__n_start_req_47; + goto s_n_llhttp__internal__n_start_req_66; } case 'S': { p++; - goto s_n_llhttp__internal__n_start_req_50; + goto s_n_llhttp__internal__n_start_req_69; } default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_44: - s_n_llhttp__internal__n_start_req_44: { + 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_start_req_44; + return s_n_llhttp__internal__n_start_req_63; } switch (*p) { case 'N': { p++; - goto s_n_llhttp__internal__n_start_req_45; + goto s_n_llhttp__internal__n_start_req_64; } default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4560,62 +5071,66 @@ static llparse_state_t llhttp__internal__run( } case 'B': { p++; - goto s_n_llhttp__internal__n_start_req_2; + goto s_n_llhttp__internal__n_start_req_4; } case 'C': { p++; - goto s_n_llhttp__internal__n_start_req_3; + goto s_n_llhttp__internal__n_start_req_5; } case 'D': { - p++; - goto s_n_llhttp__internal__n_start_req_8; - } - case 'G': { - p++; - goto s_n_llhttp__internal__n_start_req_9; - } - case 'H': { p++; goto s_n_llhttp__internal__n_start_req_10; } - case 'L': { - p++; - goto s_n_llhttp__internal__n_start_req_11; - } - case 'M': { + case 'F': { p++; goto s_n_llhttp__internal__n_start_req_14; } + case 'G': { + p++; + goto s_n_llhttp__internal__n_start_req_15; + } + case 'H': { + p++; + goto s_n_llhttp__internal__n_start_req_18; + } + case 'L': { + p++; + goto s_n_llhttp__internal__n_start_req_19; + } + case 'M': { + p++; + goto s_n_llhttp__internal__n_start_req_22; + } case 'N': { p++; - goto s_n_llhttp__internal__n_start_req_23; + goto s_n_llhttp__internal__n_start_req_31; } case 'O': { p++; - goto s_n_llhttp__internal__n_start_req_24; + goto s_n_llhttp__internal__n_start_req_32; } case 'P': { p++; - goto s_n_llhttp__internal__n_start_req_25; + goto s_n_llhttp__internal__n_start_req_33; } case 'R': { p++; - goto s_n_llhttp__internal__n_start_req_35; + goto s_n_llhttp__internal__n_start_req_46; } case 'S': { p++; - goto s_n_llhttp__internal__n_start_req_39; + goto s_n_llhttp__internal__n_start_req_52; } case 'T': { p++; - goto s_n_llhttp__internal__n_start_req_43; + goto s_n_llhttp__internal__n_start_req_60; } case 'U': { p++; - goto s_n_llhttp__internal__n_start_req_44; + goto s_n_llhttp__internal__n_start_req_63; } default: { - goto s_n_llhttp__internal__n_error_53; + goto s_n_llhttp__internal__n_error_55; } } /* UNREACHABLE */; @@ -4632,7 +5147,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_header_field_start; } default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -4707,7 +5222,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_res_status_start; } default: { - goto s_n_llhttp__internal__n_error_47; + goto s_n_llhttp__internal__n_error_49; } } /* UNREACHABLE */; @@ -4787,7 +5302,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_update_status_code; } default: { - goto s_n_llhttp__internal__n_error_48; + goto s_n_llhttp__internal__n_error_50; } } /* UNREACHABLE */; @@ -4850,7 +5365,7 @@ 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_error_49; + goto s_n_llhttp__internal__n_error_51; } } /* UNREACHABLE */; @@ -4867,7 +5382,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_res_http_minor; } default: { - goto s_n_llhttp__internal__n_error_50; + goto s_n_llhttp__internal__n_error_52; } } /* UNREACHABLE */; @@ -4930,7 +5445,7 @@ 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_error_51; + goto s_n_llhttp__internal__n_error_53; } } /* UNREACHABLE */; @@ -4943,7 +5458,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_res; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob47, 5); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob57, 5); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -4954,7 +5469,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_start_res; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_54; + goto s_n_llhttp__internal__n_error_56; } } /* UNREACHABLE */; @@ -4967,7 +5482,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_req_or_res_method_2; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob48, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob58, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -4979,7 +5494,7 @@ 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_52; + goto s_n_llhttp__internal__n_error_54; } } /* UNREACHABLE */; @@ -4992,7 +5507,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_req_or_res_method_3; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob49, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob59, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -5003,7 +5518,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_or_res_method_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_52; + goto s_n_llhttp__internal__n_error_54; } } /* UNREACHABLE */; @@ -5024,7 +5539,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_52; + goto s_n_llhttp__internal__n_error_54; } } /* UNREACHABLE */; @@ -5041,7 +5556,7 @@ 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_52; + goto s_n_llhttp__internal__n_error_54; } } /* UNREACHABLE */; @@ -5110,7 +5625,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_40: { + s_n_llhttp__internal__n_error_42: { state->error = 0x7; state->reason = "Invalid characters in url"; state->error_pos = (const char*) p; @@ -6134,7 +6649,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_28: { + s_n_llhttp__internal__n_error_29: { state->error = 0x9; state->reason = "Expected CRLF after version"; state->error_pos = (const char*) p; @@ -6151,7 +6666,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_29: { + s_n_llhttp__internal__n_error_30: { state->error = 0x9; state->reason = "Invalid minor version"; state->error_pos = (const char*) p; @@ -6160,7 +6675,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_30: { + s_n_llhttp__internal__n_error_31: { state->error = 0x9; state->reason = "Expected dot"; state->error_pos = (const char*) p; @@ -6177,7 +6692,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_31: { + s_n_llhttp__internal__n_error_32: { state->error = 0x9; state->reason = "Invalid major version"; state->error_pos = (const char*) p; @@ -6186,7 +6701,94 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_33: { + s_n_llhttp__internal__n_error_28: { + state->error = 0x8; + state->reason = "Invalid method for HTTP/x.x request"; + 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_method: { + switch (llhttp__internal__c_load_method(state, p, endp)) { + case 0: + goto s_n_llhttp__internal__n_req_http_major; + case 1: + goto s_n_llhttp__internal__n_req_http_major; + case 2: + goto s_n_llhttp__internal__n_req_http_major; + case 3: + goto s_n_llhttp__internal__n_req_http_major; + case 4: + goto s_n_llhttp__internal__n_req_http_major; + case 5: + goto s_n_llhttp__internal__n_req_http_major; + case 6: + goto s_n_llhttp__internal__n_req_http_major; + case 7: + goto s_n_llhttp__internal__n_req_http_major; + case 8: + goto s_n_llhttp__internal__n_req_http_major; + case 9: + goto s_n_llhttp__internal__n_req_http_major; + case 10: + goto s_n_llhttp__internal__n_req_http_major; + case 11: + goto s_n_llhttp__internal__n_req_http_major; + case 12: + goto s_n_llhttp__internal__n_req_http_major; + case 13: + goto s_n_llhttp__internal__n_req_http_major; + case 14: + goto s_n_llhttp__internal__n_req_http_major; + case 15: + goto s_n_llhttp__internal__n_req_http_major; + case 16: + goto s_n_llhttp__internal__n_req_http_major; + case 17: + goto s_n_llhttp__internal__n_req_http_major; + case 18: + goto s_n_llhttp__internal__n_req_http_major; + case 19: + goto s_n_llhttp__internal__n_req_http_major; + case 20: + goto s_n_llhttp__internal__n_req_http_major; + case 21: + goto s_n_llhttp__internal__n_req_http_major; + case 22: + goto s_n_llhttp__internal__n_req_http_major; + case 23: + goto s_n_llhttp__internal__n_req_http_major; + case 24: + goto s_n_llhttp__internal__n_req_http_major; + case 25: + goto s_n_llhttp__internal__n_req_http_major; + case 26: + goto s_n_llhttp__internal__n_req_http_major; + case 27: + goto s_n_llhttp__internal__n_req_http_major; + case 28: + goto s_n_llhttp__internal__n_req_http_major; + case 29: + goto s_n_llhttp__internal__n_req_http_major; + case 30: + goto s_n_llhttp__internal__n_req_http_major; + case 31: + goto s_n_llhttp__internal__n_req_http_major; + case 32: + goto s_n_llhttp__internal__n_req_http_major; + case 33: + goto s_n_llhttp__internal__n_req_http_major; + case 34: + goto s_n_llhttp__internal__n_req_http_major; + default: + goto s_n_llhttp__internal__n_error_28; + } + /* UNREACHABLE */; + abort(); + } + s_n_llhttp__internal__n_error_35: { state->error = 0x8; state->reason = "Expected HTTP/"; state->error_pos = (const char*) p; @@ -6195,7 +6797,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_32: { + s_n_llhttp__internal__n_error_33: { state->error = 0x8; state->reason = "Expected SOURCE method for ICE/x.x request"; state->error_pos = (const char*) p; @@ -6204,12 +6806,57 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_is_equal_method_1: { - switch (llhttp__internal__c_is_equal_method_1(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_error_32; - default: + s_n_llhttp__internal__n_invoke_load_method_1: { + switch (llhttp__internal__c_load_method(state, p, endp)) { + case 33: goto s_n_llhttp__internal__n_req_http_major; + default: + goto s_n_llhttp__internal__n_error_33; + } + /* UNREACHABLE */; + abort(); + } + s_n_llhttp__internal__n_error_34: { + state->error = 0x8; + state->reason = "Invalid method for RTSP/x.x request"; + 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_method_2: { + switch (llhttp__internal__c_load_method(state, p, endp)) { + case 1: + goto s_n_llhttp__internal__n_req_http_major; + case 3: + goto s_n_llhttp__internal__n_req_http_major; + case 6: + goto s_n_llhttp__internal__n_req_http_major; + case 35: + goto s_n_llhttp__internal__n_req_http_major; + case 36: + goto s_n_llhttp__internal__n_req_http_major; + case 37: + goto s_n_llhttp__internal__n_req_http_major; + case 38: + goto s_n_llhttp__internal__n_req_http_major; + case 39: + goto s_n_llhttp__internal__n_req_http_major; + case 40: + goto s_n_llhttp__internal__n_req_http_major; + case 41: + goto s_n_llhttp__internal__n_req_http_major; + case 42: + goto s_n_llhttp__internal__n_req_http_major; + case 43: + goto s_n_llhttp__internal__n_req_http_major; + case 44: + goto s_n_llhttp__internal__n_req_http_major; + case 45: + goto s_n_llhttp__internal__n_req_http_major; + default: + goto s_n_llhttp__internal__n_error_34; } /* UNREACHABLE */; abort(); @@ -6282,7 +6929,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_34: { + s_n_llhttp__internal__n_error_36: { state->error = 0x7; state->reason = "Invalid char in url fragment start"; state->error_pos = (const char*) p; @@ -6342,7 +6989,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_35: { + s_n_llhttp__internal__n_error_37: { state->error = 0x7; state->reason = "Invalid char in url query"; state->error_pos = (const char*) p; @@ -6351,7 +6998,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_36: { + s_n_llhttp__internal__n_error_38: { state->error = 0x7; state->reason = "Invalid char in url path"; state->error_pos = (const char*) p; @@ -6462,7 +7109,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_37: { + s_n_llhttp__internal__n_error_39: { state->error = 0x7; state->reason = "Double @ in url"; state->error_pos = (const char*) p; @@ -6471,16 +7118,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_38: { - 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_39: { + s_n_llhttp__internal__n_error_40: { state->error = 0x7; state->reason = "Unexpected char in url server"; state->error_pos = (const char*) p; @@ -6491,14 +7129,14 @@ static llparse_state_t llhttp__internal__run( } s_n_llhttp__internal__n_error_41: { state->error = 0x7; - state->reason = "Unexpected char in url schema"; + 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_42: { + s_n_llhttp__internal__n_error_43: { state->error = 0x7; state->reason = "Unexpected char in url schema"; state->error_pos = (const char*) p; @@ -6507,7 +7145,16 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_43: { + s_n_llhttp__internal__n_error_44: { + 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_45: { state->error = 0x7; state->reason = "Unexpected start char in url"; state->error_pos = (const char*) p; @@ -6526,7 +7173,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_44: { + s_n_llhttp__internal__n_error_46: { state->error = 0x6; state->reason = "Expected space after method"; state->error_pos = (const char*) p; @@ -6543,7 +7190,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_53: { + s_n_llhttp__internal__n_error_55: { state->error = 0x6; state->reason = "Invalid method encountered"; state->error_pos = (const char*) p; @@ -6552,7 +7199,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_45: { + s_n_llhttp__internal__n_error_47: { state->error = 0xd; state->reason = "Response overflow"; state->error_pos = (const char*) p; @@ -6564,14 +7211,14 @@ static llparse_state_t llhttp__internal__run( 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_45; + goto s_n_llhttp__internal__n_error_47; default: goto s_n_llhttp__internal__n_res_status_code; } /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_46: { + s_n_llhttp__internal__n_error_48: { state->error = 0x2; state->reason = "Expected LF after CR"; state->error_pos = (const char*) p; @@ -6616,7 +7263,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_47: { + s_n_llhttp__internal__n_error_49: { state->error = 0xd; state->reason = "Invalid response status"; state->error_pos = (const char*) p; @@ -6633,7 +7280,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_48: { + s_n_llhttp__internal__n_error_50: { state->error = 0x9; state->reason = "Expected space after version"; state->error_pos = (const char*) p; @@ -6650,7 +7297,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_49: { + s_n_llhttp__internal__n_error_51: { state->error = 0x9; state->reason = "Invalid minor version"; state->error_pos = (const char*) p; @@ -6659,7 +7306,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_50: { + s_n_llhttp__internal__n_error_52: { state->error = 0x9; state->reason = "Expected dot"; state->error_pos = (const char*) p; @@ -6676,7 +7323,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_51: { + s_n_llhttp__internal__n_error_53: { state->error = 0x9; state->reason = "Invalid major version"; state->error_pos = (const char*) p; @@ -6685,7 +7332,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_54: { + s_n_llhttp__internal__n_error_56: { state->error = 0x8; state->reason = "Expected HTTP/"; state->error_pos = (const char*) p; @@ -6710,7 +7357,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_52: { + s_n_llhttp__internal__n_error_54: { state->error = 0x8; state->reason = "Invalid word encountered"; state->error_pos = (const char*) p; @@ -6834,171 +7481,201 @@ int llhttp__internal_execute(llhttp__internal_t* state, const char* p, const cha typedef int (*llhttp__internal__span_cb)( llhttp__internal_t*, const char*, const char*); -static const unsigned char llparse_blob0[] = { - 'C', 'L' -}; #ifdef __SSE4_2__ -static const unsigned char ALIGN(16) llparse_blob1[] = { +static const unsigned char ALIGN(16) llparse_blob0[] = { 0x9, 0x9, 0xc, 0xc, '!', '"', '$', '>', '@', '~', 0x80, 0xff, 0x0, 0x0, 0x0, 0x0 }; #endif /* __SSE4_2__ */ -static const unsigned char llparse_blob2[] = { +static const unsigned char llparse_blob1[] = { 'o', 'n' }; -static const unsigned char llparse_blob3[] = { +static const unsigned char llparse_blob2[] = { 'e', 'c', 't', 'i', 'o', 'n' }; -static const unsigned char llparse_blob4[] = { +static const unsigned char llparse_blob3[] = { 'l', 'o', 's', 'e' }; -static const unsigned char llparse_blob5[] = { +static const unsigned char llparse_blob4[] = { 'e', 'e', 'p', '-', 'a', 'l', 'i', 'v', 'e' }; -static const unsigned char llparse_blob6[] = { +static const unsigned char llparse_blob5[] = { 'p', 'g', 'r', 'a', 'd', 'e' }; -static const unsigned char llparse_blob7[] = { +static const unsigned char llparse_blob6[] = { 'c', 'h', 'u', 'n', 'k', 'e', 'd' }; #ifdef __SSE4_2__ -static const unsigned char ALIGN(16) llparse_blob8[] = { +static const unsigned char ALIGN(16) llparse_blob7[] = { 0x9, 0x9, ' ', '~', 0x80, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 }; #endif /* __SSE4_2__ */ #ifdef __SSE4_2__ -static const unsigned char ALIGN(16) llparse_blob9[] = { +static const unsigned char ALIGN(16) llparse_blob8[] = { ' ', '!', '#', '\'', '*', '+', '-', '.', '0', '9', 'A', 'Z', '^', 'z', '|', '|' }; #endif /* __SSE4_2__ */ #ifdef __SSE4_2__ -static const unsigned char ALIGN(16) llparse_blob10[] = { +static const unsigned char ALIGN(16) llparse_blob9[] = { '~', '~', 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 }; #endif /* __SSE4_2__ */ -static const unsigned char llparse_blob11[] = { +static const unsigned char llparse_blob10[] = { 'e', 'n', 't', '-', 'l', 'e', 'n', 'g', 't', 'h' }; -static const unsigned char llparse_blob12[] = { +static const unsigned char llparse_blob11[] = { 'r', 'o', 'x', 'y', '-', 'c', 'o', 'n', 'n', 'e', 'c', 't', 'i', 'o', 'n' }; -static const unsigned char llparse_blob13[] = { +static const unsigned char llparse_blob12[] = { 'r', 'a', 'n', 's', 'f', 'e', 'r', '-', 'e', 'n', 'c', 'o', 'd', 'i', 'n', 'g' }; -static const unsigned char llparse_blob14[] = { +static const unsigned char llparse_blob13[] = { 'p', 'g', 'r', 'a', 'd', 'e' }; -static const unsigned char llparse_blob15[] = { +static const unsigned char llparse_blob14[] = { 0xd, 0xa }; -static const unsigned char llparse_blob16[] = { +static const unsigned char llparse_blob15[] = { 'T', 'T', 'P', '/' }; -static const unsigned char llparse_blob17[] = { +static const unsigned char llparse_blob16[] = { 'C', 'E', '/' }; +static const unsigned char llparse_blob17[] = { + 'T', 'S', 'P', '/' +}; static const unsigned char llparse_blob18[] = { - 'I', 'N', 'D' + 'N', 'O', 'U', 'N', 'C', 'E' }; static const unsigned char llparse_blob19[] = { - 'E', 'C', 'K', 'O', 'U', 'T' + 'I', 'N', 'D' }; static const unsigned char llparse_blob20[] = { - 'N', 'E', 'C', 'T' + 'E', 'C', 'K', 'O', 'U', 'T' }; static const unsigned char llparse_blob21[] = { - 'E', 'L', 'E', 'T', 'E' + 'N', 'E', 'C', 'T' }; static const unsigned char llparse_blob22[] = { - 'E', 'T' + 'E', 'T', 'E' }; static const unsigned char llparse_blob23[] = { - 'E', 'A', 'D' + 'C', 'R', 'I', 'B', 'E' }; static const unsigned char llparse_blob24[] = { - 'N', 'K' + 'L', 'U', 'S', 'H' }; static const unsigned char llparse_blob25[] = { - 'C', 'K' + 'E', 'T' }; static const unsigned char llparse_blob26[] = { - 'S', 'E', 'A', 'R', 'C', 'H' + 'P', 'A', 'R', 'A', 'M', 'E', 'T', 'E', 'R' }; static const unsigned char llparse_blob27[] = { - 'R', 'G', 'E' + 'E', 'A', 'D' }; static const unsigned char llparse_blob28[] = { - 'C', 'T', 'I', 'V', 'I', 'T', 'Y' + 'N', 'K' }; static const unsigned char llparse_blob29[] = { - 'L', 'E', 'N', 'D', 'A', 'R' + 'C', 'K' }; static const unsigned char llparse_blob30[] = { - 'V', 'E' + 'S', 'E', 'A', 'R', 'C', 'H' }; static const unsigned char llparse_blob31[] = { - 'O', 'T', 'I', 'F', 'Y' + 'R', 'G', 'E' }; static const unsigned char llparse_blob32[] = { - 'P', 'T', 'I', 'O', 'N', 'S' + 'C', 'T', 'I', 'V', 'I', 'T', 'Y' }; static const unsigned char llparse_blob33[] = { - 'T', 'C', 'H' + 'L', 'E', 'N', 'D', 'A', 'R' }; static const unsigned char llparse_blob34[] = { - 'S', 'T' + 'V', 'E' }; static const unsigned char llparse_blob35[] = { - 'I', 'N', 'D' + 'O', 'T', 'I', 'F', 'Y' }; static const unsigned char llparse_blob36[] = { - 'A', 'T', 'C', 'H' + 'P', 'T', 'I', 'O', 'N', 'S' }; static const unsigned char llparse_blob37[] = { - 'G', 'E' + 'C', 'H' }; static const unsigned char llparse_blob38[] = { - 'I', 'N', 'D' + 'S', 'E' }; static const unsigned char llparse_blob39[] = { - 'O', 'R', 'T' + 'A', 'Y' }; static const unsigned char llparse_blob40[] = { - 'A', 'R', 'C', 'H' + 'S', 'T' }; static const unsigned char llparse_blob41[] = { - 'U', 'R', 'C', 'E' + 'I', 'N', 'D' }; static const unsigned char llparse_blob42[] = { - 'B', 'S', 'C', 'R', 'I', 'B', 'E' + 'A', 'T', 'C', 'H' }; static const unsigned char llparse_blob43[] = { - 'R', 'A', 'C', 'E' + 'G', 'E' }; static const unsigned char llparse_blob44[] = { 'I', 'N', 'D' }; static const unsigned char llparse_blob45[] = { - 'N', 'K' + 'O', 'R', 'D' }; static const unsigned char llparse_blob46[] = { - 'C', 'K' + 'I', 'R', 'E', 'C', 'T' }; static const unsigned char llparse_blob47[] = { - 'U', 'B', 'S', 'C', 'R', 'I', 'B', 'E' + 'O', 'R', 'T' }; static const unsigned char llparse_blob48[] = { - 'H', 'T', 'T', 'P', '/' + 'R', 'C', 'H' }; static const unsigned char llparse_blob49[] = { - 'A', 'D' + 'P', 'A', 'R', 'A', 'M', 'E', 'T', 'E', 'R' }; static const unsigned char llparse_blob50[] = { + 'U', 'R', 'C', 'E' +}; +static const unsigned char llparse_blob51[] = { + 'B', 'S', 'C', 'R', 'I', 'B', 'E' +}; +static const unsigned char llparse_blob52[] = { + 'A', 'R', 'D', 'O', 'W', 'N' +}; +static const unsigned char llparse_blob53[] = { + 'A', 'C', 'E' +}; +static const unsigned char llparse_blob54[] = { + 'I', 'N', 'D' +}; +static const unsigned char llparse_blob55[] = { + 'N', 'K' +}; +static const unsigned char llparse_blob56[] = { + 'C', 'K' +}; +static const unsigned char llparse_blob57[] = { + 'U', 'B', 'S', 'C', 'R', 'I', 'B', 'E' +}; +static const unsigned char llparse_blob58[] = { + 'H', 'T', 'T', 'P', '/' +}; +static const unsigned char llparse_blob59[] = { + 'A', 'D' +}; +static const unsigned char llparse_blob60[] = { 'T', 'P', '/' }; @@ -7015,38 +7692,6 @@ struct llparse_match_s { }; typedef struct llparse_match_s llparse_match_t; -static llparse_match_t llparse__match_sequence_id( - llhttp__internal_t* s, const unsigned char* p, - const unsigned char* endp, - const unsigned char* seq, uint32_t seq_len) { - uint32_t index; - llparse_match_t res; - - index = s->_index; - for (; p != endp; p++) { - unsigned char current; - - current = *p; - if (current == seq[index]) { - if (++index == seq_len) { - res.status = kMatchComplete; - goto reset; - } - } else { - res.status = kMatchMismatch; - goto reset; - } - } - s->_index = index; - res.status = kMatchPause; - res.current = p; - return res; -reset: - s->_index = 0; - res.current = p; - return res; -} - static llparse_match_t llparse__match_sequence_to_lower( llhttp__internal_t* s, const unsigned char* p, const unsigned char* endp, @@ -7111,6 +7756,38 @@ reset: return res; } +static llparse_match_t llparse__match_sequence_id( + llhttp__internal_t* s, const unsigned char* p, + const unsigned char* endp, + const unsigned char* seq, uint32_t seq_len) { + uint32_t index; + llparse_match_t res; + + index = s->_index; + for (; p != endp; p++) { + unsigned char current; + + current = *p; + if (current == seq[index]) { + if (++index == seq_len) { + res.status = kMatchComplete; + goto reset; + } + } else { + res.status = kMatchMismatch; + goto reset; + } + } + s->_index = index; + res.status = kMatchPause; + res.current = p; + return res; +reset: + s->_index = 0; + res.current = p; + return res; +} + enum llparse_state_e { s_error, s_n_llhttp__internal__n_invoke_llhttp__after_message_complete, @@ -7180,6 +7857,7 @@ enum llparse_state_e { s_n_llhttp__internal__n_req_http_major, 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, s_n_llhttp__internal__n_req_http_start, s_n_llhttp__internal__n_url_skip_to_http, s_n_llhttp__internal__n_url_fragment, @@ -7201,56 +7879,75 @@ 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_start_req_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_7, - s_n_llhttp__internal__n_start_req_5, - s_n_llhttp__internal__n_start_req_3, s_n_llhttp__internal__n_start_req_8, s_n_llhttp__internal__n_start_req_9, - s_n_llhttp__internal__n_start_req_10, + 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_15, + 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_17, - s_n_llhttp__internal__n_start_req_22, - s_n_llhttp__internal__n_start_req_14, 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_30, - s_n_llhttp__internal__n_start_req_29, - s_n_llhttp__internal__n_start_req_28, + 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_33, - s_n_llhttp__internal__n_start_req_25, s_n_llhttp__internal__n_start_req_37, s_n_llhttp__internal__n_start_req_38, - s_n_llhttp__internal__n_start_req_36, - s_n_llhttp__internal__n_start_req_35, - s_n_llhttp__internal__n_start_req_40, - s_n_llhttp__internal__n_start_req_41, s_n_llhttp__internal__n_start_req_42, - s_n_llhttp__internal__n_start_req_39, s_n_llhttp__internal__n_start_req_43, - s_n_llhttp__internal__n_start_req_46, - s_n_llhttp__internal__n_start_req_48, - s_n_llhttp__internal__n_start_req_49, - s_n_llhttp__internal__n_start_req_47, - s_n_llhttp__internal__n_start_req_50, + 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_res_line_almost_done, s_n_llhttp__internal__n_res_status, @@ -7641,6 +8338,13 @@ int llhttp__internal__c_or_flags_17( return 0; } +int llhttp__internal__c_load_method( + llhttp__internal_t* state, + const unsigned char* p, + const unsigned char* endp) { + return state->method; +} + int llhttp__internal__c_store_http_major( llhttp__internal_t* state, const unsigned char* p, @@ -7659,13 +8363,6 @@ int llhttp__internal__c_store_http_minor( return 0; } -int llhttp__internal__c_is_equal_method_1( - llhttp__internal_t* state, - const unsigned char* p, - const unsigned char* endp) { - return state->method == 33; -} - int llhttp__internal__c_update_status_code( llhttp__internal_t* state, const unsigned char* p, @@ -8413,7 +9110,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_value_connection_1; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob4, 4); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob3, 4); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -8437,7 +9134,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_value_connection_2; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob5, 9); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob4, 9); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -8461,7 +9158,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_value_connection_3; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob6, 6); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob5, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -8693,7 +9390,7 @@ static llparse_state_t llhttp__internal__run( /* Load input */ input = _mm_loadu_si128((__m128i const*) p); - ranges = _mm_loadu_si128((__m128i const*) llparse_blob8); + ranges = _mm_loadu_si128((__m128i const*) llparse_blob7); /* Find first character that does not match `ranges` */ match_len = _mm_cmpestri(ranges, 6, @@ -8766,7 +9463,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_value_te_chunked; } - match_seq = llparse__match_sequence_to_lower_unsafe(state, p, endp, llparse_blob7, 7); + match_seq = llparse__match_sequence_to_lower_unsafe(state, p, endp, llparse_blob6, 7); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -8871,7 +9568,7 @@ static llparse_state_t llhttp__internal__run( /* Load input */ input = _mm_loadu_si128((__m128i const*) p); - ranges = _mm_loadu_si128((__m128i const*) llparse_blob9); + ranges = _mm_loadu_si128((__m128i const*) llparse_blob8); /* Find first character that does not match `ranges` */ match_len = _mm_cmpestri(ranges, 16, @@ -8883,7 +9580,7 @@ static llparse_state_t llhttp__internal__run( p += match_len; goto s_n_llhttp__internal__n_header_field_general; } - ranges = _mm_loadu_si128((__m128i const*) llparse_blob10); + ranges = _mm_loadu_si128((__m128i const*) llparse_blob9); /* Find first character that does not match `ranges` */ match_len = _mm_cmpestri(ranges, 2, @@ -8937,7 +9634,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_3; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob3, 6); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob2, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -8962,7 +9659,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_4; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob11, 10); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob10, 10); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -9008,7 +9705,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_1; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob2, 2); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob1, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -9032,7 +9729,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_5; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob12, 15); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob11, 15); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -9057,7 +9754,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_6; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob13, 16); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob12, 16); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -9082,7 +9779,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_header_field_7; } - match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob14, 6); + match_seq = llparse__match_sequence_to_lower(state, p, endp, llparse_blob13, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -9177,7 +9874,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_url_skip_lf_to_http09; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob15, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob14, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -9205,7 +9902,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_header_field_start; } default: { - goto s_n_llhttp__internal__n_error_22; + goto s_n_llhttp__internal__n_error_23; } } /* UNREACHABLE */; @@ -9226,7 +9923,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_http_end_1; } default: { - goto s_n_llhttp__internal__n_error_22; + goto s_n_llhttp__internal__n_error_23; } } /* UNREACHABLE */; @@ -9289,7 +9986,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_minor; } default: { - goto s_n_llhttp__internal__n_error_23; + goto s_n_llhttp__internal__n_error_24; } } /* UNREACHABLE */; @@ -9306,7 +10003,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_req_http_minor; } default: { - goto s_n_llhttp__internal__n_error_24; + goto s_n_llhttp__internal__n_error_25; } } /* UNREACHABLE */; @@ -9369,7 +10066,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_store_http_major; } default: { - goto s_n_llhttp__internal__n_error_25; + goto s_n_llhttp__internal__n_error_26; } } /* UNREACHABLE */; @@ -9382,18 +10079,18 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_req_http_start_1; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob16, 4); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob15, 4); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_req_http_major; + goto s_n_llhttp__internal__n_invoke_load_method; } case kMatchPause: { return s_n_llhttp__internal__n_req_http_start_1; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_27; + goto s_n_llhttp__internal__n_error_29; } } /* UNREACHABLE */; @@ -9406,18 +10103,42 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_req_http_start_2; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob17, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob16, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_invoke_is_equal_method_1; + goto s_n_llhttp__internal__n_invoke_load_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_req_http_start_2; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_27; + goto s_n_llhttp__internal__n_error_29; + } + } + /* UNREACHABLE */; + abort(); + } + case s_n_llhttp__internal__n_req_http_start_3: + s_n_llhttp__internal__n_req_http_start_3: { + llparse_match_t match_seq; + + if (p == endp) { + return s_n_llhttp__internal__n_req_http_start_3; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob17, 4); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + goto s_n_llhttp__internal__n_invoke_load_method_2; + } + case kMatchPause: { + return s_n_llhttp__internal__n_req_http_start_3; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_29; } } /* UNREACHABLE */; @@ -9441,8 +10162,12 @@ static llparse_state_t llhttp__internal__run( p++; goto s_n_llhttp__internal__n_req_http_start_2; } + case 'R': { + p++; + goto s_n_llhttp__internal__n_req_http_start_3; + } default: { - goto s_n_llhttp__internal__n_error_27; + goto s_n_llhttp__internal__n_error_29; } } /* UNREACHABLE */; @@ -9496,7 +10221,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_28; + goto s_n_llhttp__internal__n_error_30; } } /* UNREACHABLE */; @@ -9553,7 +10278,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_29; + goto s_n_llhttp__internal__n_error_31; } } /* UNREACHABLE */; @@ -9583,7 +10308,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_query; } default: { - goto s_n_llhttp__internal__n_error_30; + goto s_n_llhttp__internal__n_error_32; } } /* UNREACHABLE */; @@ -9621,7 +10346,7 @@ static llparse_state_t llhttp__internal__run( /* Load input */ input = _mm_loadu_si128((__m128i const*) p); - ranges = _mm_loadu_si128((__m128i const*) llparse_blob1); + ranges = _mm_loadu_si128((__m128i const*) llparse_blob0); /* Find first character that does not match `ranges` */ match_len = _mm_cmpestri(ranges, 12, @@ -9724,10 +10449,10 @@ static llparse_state_t llhttp__internal__run( } case 7: { p++; - goto s_n_llhttp__internal__n_error_31; + goto s_n_llhttp__internal__n_error_33; } default: { - goto s_n_llhttp__internal__n_error_32; + goto s_n_llhttp__internal__n_error_34; } } /* UNREACHABLE */; @@ -9782,7 +10507,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_33; + goto s_n_llhttp__internal__n_error_35; } } /* UNREACHABLE */; @@ -9799,7 +10524,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_server; } default: { - goto s_n_llhttp__internal__n_error_35; + goto s_n_llhttp__internal__n_error_37; } } /* UNREACHABLE */; @@ -9813,22 +10538,22 @@ static llparse_state_t llhttp__internal__run( switch (*p) { case 10: { p++; - goto s_n_llhttp__internal__n_error_34; + goto s_n_llhttp__internal__n_error_36; } case 13: { p++; - goto s_n_llhttp__internal__n_error_34; + goto s_n_llhttp__internal__n_error_36; } case ' ': { p++; - goto s_n_llhttp__internal__n_error_34; + goto s_n_llhttp__internal__n_error_36; } case '/': { p++; goto s_n_llhttp__internal__n_url_schema_delim_1; } default: { - goto s_n_llhttp__internal__n_error_35; + goto s_n_llhttp__internal__n_error_37; } } /* UNREACHABLE */; @@ -9870,7 +10595,7 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_34; + goto s_n_llhttp__internal__n_error_36; } case 2: { goto s_n_llhttp__internal__n_span_end_stub_schema; @@ -9880,7 +10605,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_schema; } default: { - goto s_n_llhttp__internal__n_error_36; + goto s_n_llhttp__internal__n_error_38; } } /* UNREACHABLE */; @@ -9912,7 +10637,7 @@ static llparse_state_t llhttp__internal__run( switch (lookup_table[(uint8_t) *p]) { case 1: { p++; - goto s_n_llhttp__internal__n_error_34; + goto s_n_llhttp__internal__n_error_36; } case 2: { goto s_n_llhttp__internal__n_span_start_stub_path_2; @@ -9921,7 +10646,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_url_schema; } default: { - goto s_n_llhttp__internal__n_error_37; + goto s_n_llhttp__internal__n_error_39; } } /* UNREACHABLE */; @@ -9977,32 +10702,7 @@ 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_38; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_1: - s_n_llhttp__internal__n_start_req_1: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_1; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob0, 2); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 19; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_1; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_40; } } /* UNREACHABLE */; @@ -10010,24 +10710,63 @@ static llparse_state_t llhttp__internal__run( } case s_n_llhttp__internal__n_start_req_2: s_n_llhttp__internal__n_start_req_2: { - llparse_match_t match_seq; - if (p == endp) { return s_n_llhttp__internal__n_start_req_2; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob18, 3); + switch (*p) { + case 'L': { + p++; + match = 19; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_3; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob18, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 16; + match = 36; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_start_req_2; + return s_n_llhttp__internal__n_start_req_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_1; + } + switch (*p) { + case 'C': { + p++; + goto s_n_llhttp__internal__n_start_req_2; + } + case 'N': { + p++; + goto s_n_llhttp__internal__n_start_req_3; + } + default: { + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10040,19 +10779,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_4; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob19, 6); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob19, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 22; + match = 16; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_4; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10065,79 +10804,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_6; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob20, 4); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob20, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 5; + match = 22; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_6; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_7; - } - switch (*p) { - case 'Y': { - p++; - match = 8; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - default: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_5; - } - switch (*p) { - case 'N': { - p++; - goto s_n_llhttp__internal__n_start_req_6; - } - case 'P': { - p++; - goto s_n_llhttp__internal__n_start_req_7; - } - default: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_3: - s_n_llhttp__internal__n_start_req_3: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_3; - } - switch (*p) { - case 'H': { - p++; - goto s_n_llhttp__internal__n_start_req_4; - } - case 'O': { - p++; - goto s_n_llhttp__internal__n_start_req_5; - } - default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10150,19 +10829,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_8; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob21, 5); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob21, 4); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 0; + match = 5; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_8; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10170,49 +10849,59 @@ static llparse_state_t llhttp__internal__run( } case s_n_llhttp__internal__n_start_req_9: s_n_llhttp__internal__n_start_req_9: { - llparse_match_t match_seq; - if (p == endp) { return s_n_llhttp__internal__n_start_req_9; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob22, 2); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { + switch (*p) { + case 'Y': { p++; - match = 1; + match = 8; goto s_n_llhttp__internal__n_invoke_store_method_1; } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_9; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + default: { + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_10: - s_n_llhttp__internal__n_start_req_10: { - llparse_match_t match_seq; - + 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_start_req_10; + return s_n_llhttp__internal__n_start_req_7; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob23, 3); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { + switch (*p) { + case 'N': { p++; - match = 2; - goto s_n_llhttp__internal__n_invoke_store_method_1; + goto s_n_llhttp__internal__n_start_req_8; } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_10; + case 'P': { + p++; + goto s_n_llhttp__internal__n_start_req_9; } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_5; + } + switch (*p) { + case 'H': { + p++; + goto s_n_llhttp__internal__n_start_req_6; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_7; + } + default: { + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10225,19 +10914,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_12; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob24, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob22, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 31; + match = 0; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_12; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10250,19 +10939,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_13; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob25, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob23, 5); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 9; + match = 35; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_13; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10274,16 +10963,101 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_start_req_11; } switch (*p) { - case 'I': { + case 'L': { p++; goto s_n_llhttp__internal__n_start_req_12; } - case 'O': { + case 'S': { p++; goto s_n_llhttp__internal__n_start_req_13; } default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_10; + } + switch (*p) { + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_11; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_14; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob24, 4); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 45; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_14; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_17; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob26, 9); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 41; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_17; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_16; + } + switch (*p) { + case '_': { + p++; + goto s_n_llhttp__internal__n_start_req_17; + } + default: { + match = 1; + goto s_n_llhttp__internal__n_invoke_store_method_1; } } /* UNREACHABLE */; @@ -10296,44 +11070,18 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_15; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob26, 6); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob25, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 24; - goto s_n_llhttp__internal__n_invoke_store_method_1; + goto s_n_llhttp__internal__n_start_req_16; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_15; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_16: - s_n_llhttp__internal__n_start_req_16: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_16; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob27, 3); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 23; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_16; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10346,19 +11094,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_18; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob28, 7); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob27, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 21; + match = 2; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_18; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10371,19 +11119,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_20; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob29, 6); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob28, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 30; + match = 31; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_20; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10391,17 +11139,24 @@ static llparse_state_t llhttp__internal__run( } 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_start_req_21; } - switch (*p) { - case 'L': { + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob29, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { p++; - match = 10; + match = 9; goto s_n_llhttp__internal__n_invoke_store_method_1; } - default: { - goto s_n_llhttp__internal__n_error_46; + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_21; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10413,7 +11168,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_start_req_19; } switch (*p) { - case 'A': { + case 'I': { p++; goto s_n_llhttp__internal__n_start_req_20; } @@ -10422,82 +11177,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_start_req_21; } default: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_17: - s_n_llhttp__internal__n_start_req_17: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_17; - } - switch (*p) { - case 'A': { - p++; - goto s_n_llhttp__internal__n_start_req_18; - } - case 'C': { - p++; - goto s_n_llhttp__internal__n_start_req_19; - } - default: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_22: - s_n_llhttp__internal__n_start_req_22: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_22; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob30, 2); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 11; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_22; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_14: - s_n_llhttp__internal__n_start_req_14: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_14; - } - switch (*p) { - case '-': { - p++; - goto s_n_llhttp__internal__n_start_req_15; - } - case 'E': { - p++; - goto s_n_llhttp__internal__n_start_req_16; - } - case 'K': { - p++; - goto s_n_llhttp__internal__n_start_req_17; - } - case 'O': { - p++; - goto s_n_llhttp__internal__n_start_req_22; - } - default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10510,19 +11190,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_23; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob31, 5); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob30, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 25; + match = 24; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_23; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10535,19 +11215,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_24; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob32, 6); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob31, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 6; + match = 23; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_24; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10560,115 +11240,44 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_26; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob33, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob32, 7); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 28; + match = 21; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_26; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_27: - s_n_llhttp__internal__n_start_req_27: { + 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_start_req_27; + return s_n_llhttp__internal__n_start_req_28; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob34, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob33, 6); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 3; + match = 30; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_start_req_27; + return s_n_llhttp__internal__n_start_req_28; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_31; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob35, 3); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 12; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_31; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_32; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob36, 4); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 13; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_32; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_30: - s_n_llhttp__internal__n_start_req_30: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_30; - } - switch (*p) { - case 'F': { - p++; - goto s_n_llhttp__internal__n_start_req_31; - } - case 'P': { - p++; - goto s_n_llhttp__internal__n_start_req_32; - } - default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10680,81 +11289,34 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_start_req_29; } switch (*p) { - case 'P': { + case 'L': { p++; - goto s_n_llhttp__internal__n_start_req_30; + match = 10; + goto s_n_llhttp__internal__n_invoke_store_method_1; } default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_28: - s_n_llhttp__internal__n_start_req_28: { + 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_start_req_28; + return s_n_llhttp__internal__n_start_req_27; } switch (*p) { - case 'I': { + case 'A': { p++; - match = 34; - goto s_n_llhttp__internal__n_invoke_store_method_1; + goto s_n_llhttp__internal__n_start_req_28; } case 'O': { p++; goto s_n_llhttp__internal__n_start_req_29; } default: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_34: - s_n_llhttp__internal__n_start_req_34: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_34; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob37, 2); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 29; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_34; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_33; - } - switch (*p) { - case 'R': { - p++; - goto s_n_llhttp__internal__n_start_req_34; - } - case 'T': { - p++; - match = 4; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10770,20 +11332,187 @@ static llparse_state_t llhttp__internal__run( p++; goto s_n_llhttp__internal__n_start_req_26; } - case 'O': { + case 'C': { p++; goto s_n_llhttp__internal__n_start_req_27; } - case 'R': { + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_30; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob34, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { p++; - goto s_n_llhttp__internal__n_start_req_28; + match = 11; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_30; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_22; + } + switch (*p) { + case '-': { + p++; + goto s_n_llhttp__internal__n_start_req_23; + } + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_24; + } + case 'K': { + p++; + goto s_n_llhttp__internal__n_start_req_25; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_30; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_31; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob35, 5); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 25; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_31; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_32; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob36, 6); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 6; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_32; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_35; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob37, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 28; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_35; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_36; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob38, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 39; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_36; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_34; + } + switch (*p) { + case 'T': { + p++; + goto s_n_llhttp__internal__n_start_req_35; } case 'U': { p++; - goto s_n_llhttp__internal__n_start_req_33; + goto s_n_llhttp__internal__n_start_req_36; } default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10796,19 +11525,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_37; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob38, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob39, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 17; + match = 38; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_37; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10821,107 +11550,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_38; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob39, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob40, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 20; + match = 3; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_38; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_36: - s_n_llhttp__internal__n_start_req_36: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_36; - } - switch (*p) { - case 'B': { - p++; - goto s_n_llhttp__internal__n_start_req_37; - } - case 'P': { - p++; - goto s_n_llhttp__internal__n_start_req_38; - } - default: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_35: - s_n_llhttp__internal__n_start_req_35: { - if (p == endp) { - return s_n_llhttp__internal__n_start_req_35; - } - switch (*p) { - case 'E': { - p++; - goto s_n_llhttp__internal__n_start_req_36; - } - default: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_40: - s_n_llhttp__internal__n_start_req_40: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_40; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob40, 4); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 14; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_40; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - case s_n_llhttp__internal__n_start_req_41: - s_n_llhttp__internal__n_start_req_41: { - llparse_match_t match_seq; - - if (p == endp) { - return s_n_llhttp__internal__n_start_req_41; - } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob41, 4); - p = match_seq.current; - switch (match_seq.status) { - case kMatchComplete: { - p++; - match = 33; - goto s_n_llhttp__internal__n_invoke_store_method_1; - } - case kMatchPause: { - return s_n_llhttp__internal__n_start_req_41; - } - case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10934,44 +11575,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_42; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob42, 7); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob41, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 26; + match = 12; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_42; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_39; - } - switch (*p) { - case 'E': { - p++; - goto s_n_llhttp__internal__n_start_req_40; - } - case 'O': { - p++; - goto s_n_llhttp__internal__n_start_req_41; - } - case 'U': { - p++; - goto s_n_llhttp__internal__n_start_req_42; - } - default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -10984,44 +11600,159 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_43; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob43, 4); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob42, 4); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 7; + match = 13; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_43; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_46: - s_n_llhttp__internal__n_start_req_46: { + 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_start_req_41; + } + switch (*p) { + case 'F': { + p++; + goto s_n_llhttp__internal__n_start_req_42; + } + case 'P': { + p++; + goto s_n_llhttp__internal__n_start_req_43; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_40; + } + switch (*p) { + case 'P': { + p++; + goto s_n_llhttp__internal__n_start_req_41; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_39; + } + switch (*p) { + case 'I': { + p++; + match = 34; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_40; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_46; + return s_n_llhttp__internal__n_start_req_45; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob44, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob43, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 18; + match = 29; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { - return s_n_llhttp__internal__n_start_req_46; + return s_n_llhttp__internal__n_start_req_45; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_44; + } + switch (*p) { + case 'R': { + p++; + goto s_n_llhttp__internal__n_start_req_45; + } + case 'T': { + p++; + match = 4; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_33; + } + switch (*p) { + case 'A': { + p++; + goto s_n_llhttp__internal__n_start_req_34; + } + case 'L': { + p++; + goto s_n_llhttp__internal__n_start_req_37; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_38; + } + case 'R': { + p++; + goto s_n_llhttp__internal__n_start_req_39; + } + case 'U': { + p++; + goto s_n_llhttp__internal__n_start_req_44; + } + default: { + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -11034,19 +11765,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_48; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob45, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob44, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 32; + match = 17; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_48; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -11059,40 +11790,19 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_49; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob46, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob45, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { p++; - match = 15; + match = 44; goto s_n_llhttp__internal__n_invoke_store_method_1; } case kMatchPause: { return s_n_llhttp__internal__n_start_req_49; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; - } - } - /* UNREACHABLE */; - abort(); - } - 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_start_req_47; - } - switch (*p) { - case 'I': { - p++; - goto s_n_llhttp__internal__n_start_req_48; - } - case 'O': { - p++; - goto s_n_llhttp__internal__n_start_req_49; - } - default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -11105,7 +11815,455 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_req_50; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob47, 8); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob46, 5); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 43; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_50; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_51; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob47, 3); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 20; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_51; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_47; + } + switch (*p) { + case 'B': { + p++; + goto s_n_llhttp__internal__n_start_req_48; + } + case 'C': { + p++; + goto s_n_llhttp__internal__n_start_req_49; + } + case 'D': { + p++; + goto s_n_llhttp__internal__n_start_req_50; + } + case 'P': { + p++; + goto s_n_llhttp__internal__n_start_req_51; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_46; + } + switch (*p) { + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_47; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_54; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob48, 3); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 14; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_54; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_56; + } + switch (*p) { + case 'P': { + p++; + match = 37; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_57; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob49, 9); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 42; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_57; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_55; + } + switch (*p) { + case 'U': { + p++; + goto s_n_llhttp__internal__n_start_req_56; + } + case '_': { + p++; + goto s_n_llhttp__internal__n_start_req_57; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_53; + } + switch (*p) { + case 'A': { + p++; + goto s_n_llhttp__internal__n_start_req_54; + } + case 'T': { + p++; + goto s_n_llhttp__internal__n_start_req_55; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_58; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob50, 4); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 33; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_58; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_59; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob51, 7); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 26; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_59; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_52; + } + switch (*p) { + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_53; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_58; + } + case 'U': { + p++; + goto s_n_llhttp__internal__n_start_req_59; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_61; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob52, 6); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 40; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_61; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_62; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob53, 3); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 7; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_62; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_60; + } + switch (*p) { + case 'E': { + p++; + goto s_n_llhttp__internal__n_start_req_61; + } + case 'R': { + p++; + goto s_n_llhttp__internal__n_start_req_62; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_65; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob54, 3); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 18; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_65; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_67; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob55, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 32; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_67; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_68; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob56, 2); + p = match_seq.current; + switch (match_seq.status) { + case kMatchComplete: { + p++; + match = 15; + goto s_n_llhttp__internal__n_invoke_store_method_1; + } + case kMatchPause: { + return s_n_llhttp__internal__n_start_req_68; + } + case kMatchMismatch: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_66; + } + switch (*p) { + case 'I': { + p++; + goto s_n_llhttp__internal__n_start_req_67; + } + case 'O': { + p++; + goto s_n_llhttp__internal__n_start_req_68; + } + default: { + goto s_n_llhttp__internal__n_error_48; + } + } + /* UNREACHABLE */; + abort(); + } + 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_start_req_69; + } + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob57, 8); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -11114,52 +12272,52 @@ 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_start_req_50; + return s_n_llhttp__internal__n_start_req_69; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_45: - s_n_llhttp__internal__n_start_req_45: { + 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_start_req_45; + return s_n_llhttp__internal__n_start_req_64; } switch (*p) { case 'B': { p++; - goto s_n_llhttp__internal__n_start_req_46; + goto s_n_llhttp__internal__n_start_req_65; } case 'L': { p++; - goto s_n_llhttp__internal__n_start_req_47; + goto s_n_llhttp__internal__n_start_req_66; } case 'S': { p++; - goto s_n_llhttp__internal__n_start_req_50; + goto s_n_llhttp__internal__n_start_req_69; } default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; abort(); } - case s_n_llhttp__internal__n_start_req_44: - s_n_llhttp__internal__n_start_req_44: { + 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_start_req_44; + return s_n_llhttp__internal__n_start_req_63; } switch (*p) { case 'N': { p++; - goto s_n_llhttp__internal__n_start_req_45; + goto s_n_llhttp__internal__n_start_req_64; } default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -11177,62 +12335,66 @@ static llparse_state_t llhttp__internal__run( } case 'B': { p++; - goto s_n_llhttp__internal__n_start_req_2; + goto s_n_llhttp__internal__n_start_req_4; } case 'C': { p++; - goto s_n_llhttp__internal__n_start_req_3; + goto s_n_llhttp__internal__n_start_req_5; } case 'D': { - p++; - goto s_n_llhttp__internal__n_start_req_8; - } - case 'G': { - p++; - goto s_n_llhttp__internal__n_start_req_9; - } - case 'H': { p++; goto s_n_llhttp__internal__n_start_req_10; } - case 'L': { - p++; - goto s_n_llhttp__internal__n_start_req_11; - } - case 'M': { + case 'F': { p++; goto s_n_llhttp__internal__n_start_req_14; } + case 'G': { + p++; + goto s_n_llhttp__internal__n_start_req_15; + } + case 'H': { + p++; + goto s_n_llhttp__internal__n_start_req_18; + } + case 'L': { + p++; + goto s_n_llhttp__internal__n_start_req_19; + } + case 'M': { + p++; + goto s_n_llhttp__internal__n_start_req_22; + } case 'N': { p++; - goto s_n_llhttp__internal__n_start_req_23; + goto s_n_llhttp__internal__n_start_req_31; } case 'O': { p++; - goto s_n_llhttp__internal__n_start_req_24; + goto s_n_llhttp__internal__n_start_req_32; } case 'P': { p++; - goto s_n_llhttp__internal__n_start_req_25; + goto s_n_llhttp__internal__n_start_req_33; } case 'R': { p++; - goto s_n_llhttp__internal__n_start_req_35; + goto s_n_llhttp__internal__n_start_req_46; } case 'S': { p++; - goto s_n_llhttp__internal__n_start_req_39; + goto s_n_llhttp__internal__n_start_req_52; } case 'T': { p++; - goto s_n_llhttp__internal__n_start_req_43; + goto s_n_llhttp__internal__n_start_req_60; } case 'U': { p++; - goto s_n_llhttp__internal__n_start_req_44; + goto s_n_llhttp__internal__n_start_req_63; } default: { - goto s_n_llhttp__internal__n_error_46; + goto s_n_llhttp__internal__n_error_48; } } /* UNREACHABLE */; @@ -11317,7 +12479,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_res_status_start; } default: { - goto s_n_llhttp__internal__n_error_40; + goto s_n_llhttp__internal__n_error_42; } } /* UNREACHABLE */; @@ -11397,7 +12559,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_invoke_update_status_code; } default: { - goto s_n_llhttp__internal__n_error_41; + goto s_n_llhttp__internal__n_error_43; } } /* UNREACHABLE */; @@ -11460,7 +12622,7 @@ 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_error_42; + goto s_n_llhttp__internal__n_error_44; } } /* UNREACHABLE */; @@ -11477,7 +12639,7 @@ static llparse_state_t llhttp__internal__run( goto s_n_llhttp__internal__n_res_http_minor; } default: { - goto s_n_llhttp__internal__n_error_43; + goto s_n_llhttp__internal__n_error_45; } } /* UNREACHABLE */; @@ -11540,7 +12702,7 @@ 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_error_44; + goto s_n_llhttp__internal__n_error_46; } } /* UNREACHABLE */; @@ -11553,7 +12715,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_start_res; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob48, 5); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob58, 5); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -11564,7 +12726,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_start_res; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_47; + goto s_n_llhttp__internal__n_error_49; } } /* UNREACHABLE */; @@ -11577,7 +12739,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_req_or_res_method_2; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob49, 2); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob59, 2); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -11589,7 +12751,7 @@ 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_45; + goto s_n_llhttp__internal__n_error_47; } } /* UNREACHABLE */; @@ -11602,7 +12764,7 @@ static llparse_state_t llhttp__internal__run( if (p == endp) { return s_n_llhttp__internal__n_req_or_res_method_3; } - match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob50, 3); + match_seq = llparse__match_sequence_id(state, p, endp, llparse_blob60, 3); p = match_seq.current; switch (match_seq.status) { case kMatchComplete: { @@ -11613,7 +12775,7 @@ static llparse_state_t llhttp__internal__run( return s_n_llhttp__internal__n_req_or_res_method_3; } case kMatchMismatch: { - goto s_n_llhttp__internal__n_error_45; + goto s_n_llhttp__internal__n_error_47; } } /* UNREACHABLE */; @@ -11634,7 +12796,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_45; + goto s_n_llhttp__internal__n_error_47; } } /* UNREACHABLE */; @@ -11651,7 +12813,7 @@ 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_45; + goto s_n_llhttp__internal__n_error_47; } } /* UNREACHABLE */; @@ -11711,7 +12873,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */ abort(); } - s_n_llhttp__internal__n_error_34: { + s_n_llhttp__internal__n_error_36: { state->error = 0x7; state->reason = "Invalid characters in url"; state->error_pos = (const char*) p; @@ -12682,7 +13844,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_22: { + s_n_llhttp__internal__n_error_23: { state->error = 0x9; state->reason = "Expected CRLF after version"; state->error_pos = (const char*) p; @@ -12699,7 +13861,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_23: { + s_n_llhttp__internal__n_error_24: { state->error = 0x9; state->reason = "Invalid minor version"; state->error_pos = (const char*) p; @@ -12708,7 +13870,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_24: { + s_n_llhttp__internal__n_error_25: { state->error = 0x9; state->reason = "Expected dot"; state->error_pos = (const char*) p; @@ -12725,7 +13887,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_25: { + s_n_llhttp__internal__n_error_26: { state->error = 0x9; state->reason = "Invalid major version"; state->error_pos = (const char*) p; @@ -12734,7 +13896,94 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_27: { + s_n_llhttp__internal__n_error_22: { + state->error = 0x8; + state->reason = "Invalid method for HTTP/x.x request"; + 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_method: { + switch (llhttp__internal__c_load_method(state, p, endp)) { + case 0: + goto s_n_llhttp__internal__n_req_http_major; + case 1: + goto s_n_llhttp__internal__n_req_http_major; + case 2: + goto s_n_llhttp__internal__n_req_http_major; + case 3: + goto s_n_llhttp__internal__n_req_http_major; + case 4: + goto s_n_llhttp__internal__n_req_http_major; + case 5: + goto s_n_llhttp__internal__n_req_http_major; + case 6: + goto s_n_llhttp__internal__n_req_http_major; + case 7: + goto s_n_llhttp__internal__n_req_http_major; + case 8: + goto s_n_llhttp__internal__n_req_http_major; + case 9: + goto s_n_llhttp__internal__n_req_http_major; + case 10: + goto s_n_llhttp__internal__n_req_http_major; + case 11: + goto s_n_llhttp__internal__n_req_http_major; + case 12: + goto s_n_llhttp__internal__n_req_http_major; + case 13: + goto s_n_llhttp__internal__n_req_http_major; + case 14: + goto s_n_llhttp__internal__n_req_http_major; + case 15: + goto s_n_llhttp__internal__n_req_http_major; + case 16: + goto s_n_llhttp__internal__n_req_http_major; + case 17: + goto s_n_llhttp__internal__n_req_http_major; + case 18: + goto s_n_llhttp__internal__n_req_http_major; + case 19: + goto s_n_llhttp__internal__n_req_http_major; + case 20: + goto s_n_llhttp__internal__n_req_http_major; + case 21: + goto s_n_llhttp__internal__n_req_http_major; + case 22: + goto s_n_llhttp__internal__n_req_http_major; + case 23: + goto s_n_llhttp__internal__n_req_http_major; + case 24: + goto s_n_llhttp__internal__n_req_http_major; + case 25: + goto s_n_llhttp__internal__n_req_http_major; + case 26: + goto s_n_llhttp__internal__n_req_http_major; + case 27: + goto s_n_llhttp__internal__n_req_http_major; + case 28: + goto s_n_llhttp__internal__n_req_http_major; + case 29: + goto s_n_llhttp__internal__n_req_http_major; + case 30: + goto s_n_llhttp__internal__n_req_http_major; + case 31: + goto s_n_llhttp__internal__n_req_http_major; + case 32: + goto s_n_llhttp__internal__n_req_http_major; + case 33: + goto s_n_llhttp__internal__n_req_http_major; + case 34: + goto s_n_llhttp__internal__n_req_http_major; + default: + goto s_n_llhttp__internal__n_error_22; + } + /* UNREACHABLE */; + abort(); + } + s_n_llhttp__internal__n_error_29: { state->error = 0x8; state->reason = "Expected HTTP/"; state->error_pos = (const char*) p; @@ -12743,7 +13992,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_26: { + s_n_llhttp__internal__n_error_27: { state->error = 0x8; state->reason = "Expected SOURCE method for ICE/x.x request"; state->error_pos = (const char*) p; @@ -12752,12 +14001,57 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_invoke_is_equal_method_1: { - switch (llhttp__internal__c_is_equal_method_1(state, p, endp)) { - case 0: - goto s_n_llhttp__internal__n_error_26; - default: + s_n_llhttp__internal__n_invoke_load_method_1: { + switch (llhttp__internal__c_load_method(state, p, endp)) { + case 33: goto s_n_llhttp__internal__n_req_http_major; + default: + goto s_n_llhttp__internal__n_error_27; + } + /* UNREACHABLE */; + abort(); + } + s_n_llhttp__internal__n_error_28: { + state->error = 0x8; + state->reason = "Invalid method for RTSP/x.x request"; + 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_method_2: { + switch (llhttp__internal__c_load_method(state, p, endp)) { + case 1: + goto s_n_llhttp__internal__n_req_http_major; + case 3: + goto s_n_llhttp__internal__n_req_http_major; + case 6: + goto s_n_llhttp__internal__n_req_http_major; + case 35: + goto s_n_llhttp__internal__n_req_http_major; + case 36: + goto s_n_llhttp__internal__n_req_http_major; + case 37: + goto s_n_llhttp__internal__n_req_http_major; + case 38: + goto s_n_llhttp__internal__n_req_http_major; + case 39: + goto s_n_llhttp__internal__n_req_http_major; + case 40: + goto s_n_llhttp__internal__n_req_http_major; + case 41: + goto s_n_llhttp__internal__n_req_http_major; + case 42: + goto s_n_llhttp__internal__n_req_http_major; + case 43: + goto s_n_llhttp__internal__n_req_http_major; + case 44: + goto s_n_llhttp__internal__n_req_http_major; + case 45: + goto s_n_llhttp__internal__n_req_http_major; + default: + goto s_n_llhttp__internal__n_error_28; } /* UNREACHABLE */; abort(); @@ -12830,7 +14124,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_28: { + s_n_llhttp__internal__n_error_30: { state->error = 0x7; state->reason = "Invalid char in url fragment start"; state->error_pos = (const char*) p; @@ -12890,7 +14184,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_29: { + s_n_llhttp__internal__n_error_31: { state->error = 0x7; state->reason = "Invalid char in url query"; state->error_pos = (const char*) p; @@ -12899,7 +14193,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_30: { + s_n_llhttp__internal__n_error_32: { state->error = 0x7; state->reason = "Invalid char in url path"; state->error_pos = (const char*) p; @@ -13010,7 +14304,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_31: { + s_n_llhttp__internal__n_error_33: { state->error = 0x7; state->reason = "Double @ in url"; state->error_pos = (const char*) p; @@ -13019,16 +14313,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_32: { - 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_33: { + s_n_llhttp__internal__n_error_34: { state->error = 0x7; state->reason = "Unexpected char in url server"; state->error_pos = (const char*) p; @@ -13039,14 +14324,14 @@ static llparse_state_t llhttp__internal__run( } s_n_llhttp__internal__n_error_35: { state->error = 0x7; - state->reason = "Unexpected char in url schema"; + 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_36: { + s_n_llhttp__internal__n_error_37: { state->error = 0x7; state->reason = "Unexpected char in url schema"; state->error_pos = (const char*) p; @@ -13055,7 +14340,16 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_37: { + s_n_llhttp__internal__n_error_38: { + 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_39: { state->error = 0x7; state->reason = "Unexpected start char in url"; state->error_pos = (const char*) p; @@ -13074,7 +14368,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_38: { + s_n_llhttp__internal__n_error_40: { state->error = 0x6; state->reason = "Expected space after method"; state->error_pos = (const char*) p; @@ -13091,7 +14385,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_46: { + s_n_llhttp__internal__n_error_48: { state->error = 0x6; state->reason = "Invalid method encountered"; state->error_pos = (const char*) p; @@ -13100,7 +14394,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_39: { + s_n_llhttp__internal__n_error_41: { state->error = 0xd; state->reason = "Response overflow"; state->error_pos = (const char*) p; @@ -13112,7 +14406,7 @@ static llparse_state_t llhttp__internal__run( 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_39; + goto s_n_llhttp__internal__n_error_41; default: goto s_n_llhttp__internal__n_res_status_code; } @@ -13155,7 +14449,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_40: { + s_n_llhttp__internal__n_error_42: { state->error = 0xd; state->reason = "Invalid response status"; state->error_pos = (const char*) p; @@ -13172,7 +14466,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_41: { + s_n_llhttp__internal__n_error_43: { state->error = 0x9; state->reason = "Expected space after version"; state->error_pos = (const char*) p; @@ -13189,7 +14483,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_42: { + s_n_llhttp__internal__n_error_44: { state->error = 0x9; state->reason = "Invalid minor version"; state->error_pos = (const char*) p; @@ -13198,7 +14492,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_43: { + s_n_llhttp__internal__n_error_45: { state->error = 0x9; state->reason = "Expected dot"; state->error_pos = (const char*) p; @@ -13215,7 +14509,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_44: { + s_n_llhttp__internal__n_error_46: { state->error = 0x9; state->reason = "Invalid major version"; state->error_pos = (const char*) p; @@ -13224,7 +14518,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_47: { + s_n_llhttp__internal__n_error_49: { state->error = 0x8; state->reason = "Expected HTTP/"; state->error_pos = (const char*) p; @@ -13249,7 +14543,7 @@ static llparse_state_t llhttp__internal__run( /* UNREACHABLE */; abort(); } - s_n_llhttp__internal__n_error_45: { + s_n_llhttp__internal__n_error_47: { state->error = 0x8; state->reason = "Invalid word encountered"; state->error_pos = (const char*) p;