File CVE-2024-27982.patch of Package nodejs14.33370

http: do not allow OBS fold in headers by default

Index: node-v14.21.3/deps/llhttp/src/api.c
===================================================================
--- node-v14.21.3.orig/deps/llhttp/src/api.c
+++ node-v14.21.3/deps/llhttp/src/api.c
@@ -4,7 +4,7 @@
 
 #include "llhttp.h"
 
-#define CALLBACK_MAYBE(PARSER, NAME, ...)                                     \
+#define CALLBACK_MAYBE(PARSER, NAME)                                          \
   do {                                                                        \
     llhttp_settings_t* settings;                                              \
     settings = (llhttp_settings_t*) (PARSER)->settings;                       \
@@ -12,7 +12,7 @@
       err = 0;                                                                \
       break;                                                                  \
     }                                                                         \
-    err = settings->NAME(__VA_ARGS__);                                        \
+    err = settings->NAME((PARSER));                                           \
   } while (0)
 
 #define SPAN_CALLBACK_MAYBE(PARSER, NAME, START, LEN)                         \
@@ -59,7 +59,7 @@ llhttp_errno_t llhttp_finish(llhttp_t* p
 
   switch (parser->finish) {
     case HTTP_FINISH_SAFE_WITH_CB:
-      CALLBACK_MAYBE(parser, on_message_complete, parser);
+      CALLBACK_MAYBE(parser, on_message_complete);
       if (err != HPE_OK) return err;
 
     /* FALLTHROUGH */
@@ -156,63 +156,63 @@ void llhttp_set_lenient(llhttp_t* parser
 
 int llhttp__on_message_begin(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_message_begin, s);
+  CALLBACK_MAYBE(s, on_message_begin);
   return err;
 }
 
 
 int llhttp__on_url(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_url, s, p, endp - p);
+  SPAN_CALLBACK_MAYBE(s, on_url, p, endp - p);
   return err;
 }
 
 
 int llhttp__on_status(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_status, s, p, endp - p);
+  SPAN_CALLBACK_MAYBE(s, on_status, p, endp - p);
   return err;
 }
 
 
 int llhttp__on_header_field(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_header_field, s, p, endp - p);
+  SPAN_CALLBACK_MAYBE(s, on_header_field, p, endp - p);
   return err;
 }
 
 
 int llhttp__on_header_value(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_header_value, s, p, endp - p);
+  SPAN_CALLBACK_MAYBE(s, on_header_value, p, endp - p);
   return err;
 }
 
 
 int llhttp__on_headers_complete(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_headers_complete, s);
+  CALLBACK_MAYBE(s, on_headers_complete);
   return err;
 }
 
 
 int llhttp__on_message_complete(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_message_complete, s);
+  CALLBACK_MAYBE(s, on_message_complete);
   return err;
 }
 
 
 int llhttp__on_body(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_body, s, p, endp - p);
+  SPAN_CALLBACK_MAYBE(s, on_body, p, endp - p);
   return err;
 }
 
 
 int llhttp__on_chunk_header(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_chunk_header, s);
+  CALLBACK_MAYBE(s, on_chunk_header);
   return err;
 }
 
@@ -226,7 +226,7 @@ int llhttp__on_chunk_parameters(llhttp_t
 
 int llhttp__on_chunk_complete(llhttp_t* s, const char* p, const char* endp) {
   int err;
-  CALLBACK_MAYBE(s, on_chunk_complete, s);
+  CALLBACK_MAYBE(s, on_chunk_complete);
   return err;
 }
 
Index: node-v14.21.3/deps/llhttp/src/llhttp.c
===================================================================
--- node-v14.21.3.orig/deps/llhttp/src/llhttp.c
+++ node-v14.21.3/deps/llhttp/src/llhttp.c
@@ -327,7 +327,7 @@ enum llparse_state_e {
   s_n_llhttp__internal__n_header_value_lws,
   s_n_llhttp__internal__n_header_value_almost_done,
   s_n_llhttp__internal__n_header_value_lenient,
-  s_n_llhttp__internal__n_error_26,
+  s_n_llhttp__internal__n_error_27,
   s_n_llhttp__internal__n_header_value_otherwise,
   s_n_llhttp__internal__n_header_value_connection_token,
   s_n_llhttp__internal__n_header_value_connection_ws,
@@ -335,12 +335,12 @@ enum llparse_state_e {
   s_n_llhttp__internal__n_header_value_connection_2,
   s_n_llhttp__internal__n_header_value_connection_3,
   s_n_llhttp__internal__n_header_value_connection,
-  s_n_llhttp__internal__n_error_28,
   s_n_llhttp__internal__n_error_29,
+  s_n_llhttp__internal__n_error_30,
   s_n_llhttp__internal__n_header_value_content_length_ws,
   s_n_llhttp__internal__n_header_value_content_length,
+  s_n_llhttp__internal__n_error_32,
   s_n_llhttp__internal__n_error_31,
-  s_n_llhttp__internal__n_error_30,
   s_n_llhttp__internal__n_header_value_te_token_ows,
   s_n_llhttp__internal__n_header_value,
   s_n_llhttp__internal__n_header_value_te_token,
@@ -775,7 +775,7 @@ int llhttp__internal__c_update_header_st
   return 0;
 }
 
-int llhttp__internal__c_test_flags_7(
+int llhttp__internal__c_test_flags_10(
     llhttp__internal_t* state,
     const unsigned char* p,
     const unsigned char* endp) {
@@ -816,7 +816,7 @@ int llhttp__internal__c_or_flags_15(
   return 0;
 }
 
-int llhttp__internal__c_test_flags_8(
+int llhttp__internal__c_test_flags_11(
     llhttp__internal_t* state,
     const unsigned char* p,
     const unsigned char* endp) {
@@ -1569,11 +1569,11 @@ static llparse_state_t llhttp__internal_
       switch (*p) {
         case 9: {
           p++;
-          goto s_n_llhttp__internal__n_error_22;
+          goto s_n_llhttp__internal__n_invoke_test_flags_6;
         }
         case ' ': {
           p++;
-          goto s_n_llhttp__internal__n_error_22;
+          goto s_n_llhttp__internal__n_invoke_test_flags_6;
         }
         default: {
           goto s_n_llhttp__internal__n_invoke_load_header_state;
@@ -1593,7 +1593,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_header_value_discard_lws;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_24;
+          goto s_n_llhttp__internal__n_invoke_test_flags_7;
         }
       }
       /* UNREACHABLE */;
@@ -1606,10 +1606,10 @@ static llparse_state_t llhttp__internal_
       }
       switch (*p) {
         case 9: {
-          goto s_n_llhttp__internal__n_invoke_load_header_state_3;
+          goto s_n_llhttp__internal__n_invoke_test_flags_8;
         }
         case ' ': {
-          goto s_n_llhttp__internal__n_invoke_load_header_state_3;
+          goto s_n_llhttp__internal__n_invoke_test_flags_8;
         }
         default: {
           goto s_n_llhttp__internal__n_invoke_load_header_state_4;
@@ -1629,7 +1629,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_header_value_lws;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_25;
+          goto s_n_llhttp__internal__n_error_26;
         }
       }
       /* UNREACHABLE */;
@@ -1655,8 +1655,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_26:
-    s_n_llhttp__internal__n_error_26: {
+    case s_n_llhttp__internal__n_error_27:
+    s_n_llhttp__internal__n_error_27: {
       state->error = 0xa;
       state->reason = "Invalid header value char";
       state->error_pos = (const char*) p;
@@ -1675,7 +1675,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_invoke_test_flags_6;
+          goto s_n_llhttp__internal__n_invoke_test_flags_9;
         }
       }
       /* UNREACHABLE */;
@@ -1852,8 +1852,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_28:
-    s_n_llhttp__internal__n_error_28: {
+    case s_n_llhttp__internal__n_error_29:
+    s_n_llhttp__internal__n_error_29: {
       state->error = 0xb;
       state->reason = "Content-Length overflow";
       state->error_pos = (const char*) p;
@@ -1862,8 +1862,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_29:
-    s_n_llhttp__internal__n_error_29: {
+    case s_n_llhttp__internal__n_error_30:
+    s_n_llhttp__internal__n_error_30: {
       state->error = 0xb;
       state->reason = "Invalid character in Content-Length";
       state->error_pos = (const char*) p;
@@ -1958,8 +1958,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_31:
-    s_n_llhttp__internal__n_error_31: {
+    case s_n_llhttp__internal__n_error_32:
+    s_n_llhttp__internal__n_error_32: {
       state->error = 0xf;
       state->reason = "Invalid `Transfer-Encoding` header value";
       state->error_pos = (const char*) p;
@@ -1968,8 +1968,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_30:
-    s_n_llhttp__internal__n_error_30: {
+    case s_n_llhttp__internal__n_error_31:
+    s_n_llhttp__internal__n_error_31: {
       state->error = 0xf;
       state->reason = "Invalid `Transfer-Encoding` header value";
       state->error_pos = (const char*) p;
@@ -2197,7 +2197,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_2;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_32;
+          goto s_n_llhttp__internal__n_error_33;
         }
       }
       /* UNREACHABLE */;
@@ -2577,7 +2577,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_to_http_09;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_33;
+          goto s_n_llhttp__internal__n_error_34;
         }
       }
       /* UNREACHABLE */;
@@ -2602,7 +2602,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_skip_lf_to_http09_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_33;
+          goto s_n_llhttp__internal__n_error_34;
         }
       }
       /* UNREACHABLE */;
@@ -2619,7 +2619,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_header_field_start;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_34;
+          goto s_n_llhttp__internal__n_error_35;
         }
       }
       /* UNREACHABLE */;
@@ -2640,7 +2640,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_http_end_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_34;
+          goto s_n_llhttp__internal__n_error_35;
         }
       }
       /* UNREACHABLE */;
@@ -2703,7 +2703,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_store_http_minor;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_35;
+          goto s_n_llhttp__internal__n_error_36;
         }
       }
       /* UNREACHABLE */;
@@ -2720,7 +2720,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_http_minor;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_36;
+          goto s_n_llhttp__internal__n_error_37;
         }
       }
       /* UNREACHABLE */;
@@ -2783,7 +2783,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_store_http_major;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_37;
+          goto s_n_llhttp__internal__n_error_38;
         }
       }
       /* UNREACHABLE */;
@@ -2807,7 +2807,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_req_http_start_1;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_39;
+          goto s_n_llhttp__internal__n_error_40;
         }
       }
       /* UNREACHABLE */;
@@ -2831,7 +2831,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_req_http_start_2;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_39;
+          goto s_n_llhttp__internal__n_error_40;
         }
       }
       /* UNREACHABLE */;
@@ -2856,7 +2856,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_http_start_2;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_39;
+          goto s_n_llhttp__internal__n_error_40;
         }
       }
       /* UNREACHABLE */;
@@ -2947,7 +2947,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_fragment;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_40;
+          goto s_n_llhttp__internal__n_error_41;
         }
       }
       /* UNREACHABLE */;
@@ -3008,7 +3008,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_span_end_stub_query_3;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_41;
+          goto s_n_llhttp__internal__n_error_42;
         }
       }
       /* UNREACHABLE */;
@@ -3046,7 +3046,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_query;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_42;
+          goto s_n_llhttp__internal__n_error_43;
         }
       }
       /* UNREACHABLE */;
@@ -3171,10 +3171,10 @@ static llparse_state_t llhttp__internal_
         }
         case 8: {
           p++;
-          goto s_n_llhttp__internal__n_error_43;
+          goto s_n_llhttp__internal__n_error_44;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_44;
+          goto s_n_llhttp__internal__n_error_45;
         }
       }
       /* UNREACHABLE */;
@@ -3233,7 +3233,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_server_with_at;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_45;
+          goto s_n_llhttp__internal__n_error_46;
         }
       }
       /* UNREACHABLE */;
@@ -3250,7 +3250,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_server;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_47;
+          goto s_n_llhttp__internal__n_error_48;
         }
       }
       /* UNREACHABLE */;
@@ -3268,7 +3268,7 @@ static llparse_state_t llhttp__internal_
         }
         case 10: {
           p++;
-          goto s_n_llhttp__internal__n_error_46;
+          goto s_n_llhttp__internal__n_error_47;
         }
         case 12: {
           p++;
@@ -3276,18 +3276,18 @@ static llparse_state_t llhttp__internal_
         }
         case 13: {
           p++;
-          goto s_n_llhttp__internal__n_error_46;
+          goto s_n_llhttp__internal__n_error_47;
         }
         case ' ': {
           p++;
-          goto s_n_llhttp__internal__n_error_46;
+          goto s_n_llhttp__internal__n_error_47;
         }
         case '/': {
           p++;
           goto s_n_llhttp__internal__n_url_schema_delim_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_47;
+          goto s_n_llhttp__internal__n_error_48;
         }
       }
       /* UNREACHABLE */;
@@ -3333,7 +3333,7 @@ static llparse_state_t llhttp__internal_
         }
         case 2: {
           p++;
-          goto s_n_llhttp__internal__n_error_46;
+          goto s_n_llhttp__internal__n_error_47;
         }
         case 3: {
           goto s_n_llhttp__internal__n_span_end_stub_schema;
@@ -3343,7 +3343,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_schema;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_48;
+          goto s_n_llhttp__internal__n_error_49;
         }
       }
       /* UNREACHABLE */;
@@ -3379,7 +3379,7 @@ static llparse_state_t llhttp__internal_
         }
         case 2: {
           p++;
-          goto s_n_llhttp__internal__n_error_46;
+          goto s_n_llhttp__internal__n_error_47;
         }
         case 3: {
           goto s_n_llhttp__internal__n_span_start_stub_path_2;
@@ -3388,7 +3388,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_schema;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_49;
+          goto s_n_llhttp__internal__n_error_50;
         }
       }
       /* UNREACHABLE */;
@@ -3486,7 +3486,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_spaces_before_url;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_50;
+          goto s_n_llhttp__internal__n_error_51;
         }
       }
       /* UNREACHABLE */;
@@ -3511,7 +3511,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_1;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3536,7 +3536,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_2;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3561,7 +3561,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_4;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3586,7 +3586,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_6;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3604,7 +3604,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_store_method_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3625,7 +3625,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_7;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3646,7 +3646,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_5;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3671,7 +3671,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_8;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3696,7 +3696,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_9;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3721,7 +3721,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_10;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3746,7 +3746,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_12;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3771,7 +3771,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_13;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3792,7 +3792,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_13;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3817,7 +3817,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_15;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3842,7 +3842,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_16;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3867,7 +3867,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_18;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3892,7 +3892,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_20;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3910,7 +3910,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_store_method_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3931,7 +3931,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_21;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3952,7 +3952,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_19;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -3977,7 +3977,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_22;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4006,7 +4006,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_22;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4031,7 +4031,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_23;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4056,7 +4056,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_24;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4081,7 +4081,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_26;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4106,7 +4106,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_27;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4131,7 +4131,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_31;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4156,7 +4156,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_32;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4177,7 +4177,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_32;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4194,7 +4194,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_30;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4216,7 +4216,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_29;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4241,7 +4241,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_34;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4263,7 +4263,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_store_method_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4292,7 +4292,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_33;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4317,7 +4317,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_37;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4342,7 +4342,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_38;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4363,7 +4363,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_38;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4380,7 +4380,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_36;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4405,7 +4405,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_40;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4430,7 +4430,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_41;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4455,7 +4455,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_42;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4480,7 +4480,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_42;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4505,7 +4505,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_43;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4530,7 +4530,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_46;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4555,7 +4555,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_48;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4580,7 +4580,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_49;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4601,7 +4601,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_49;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4626,7 +4626,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_50;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4651,7 +4651,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_50;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4668,7 +4668,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_45;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4741,7 +4741,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_44;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_59;
+          goto s_n_llhttp__internal__n_error_60;
         }
       }
       /* UNREACHABLE */;
@@ -4758,7 +4758,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_header_field_start;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_52;
+          goto s_n_llhttp__internal__n_error_53;
         }
       }
       /* UNREACHABLE */;
@@ -4833,7 +4833,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_res_status_start;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -4913,7 +4913,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_update_status_code;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_54;
+          goto s_n_llhttp__internal__n_error_55;
         }
       }
       /* UNREACHABLE */;
@@ -4976,7 +4976,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_store_http_minor_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_55;
+          goto s_n_llhttp__internal__n_error_56;
         }
       }
       /* UNREACHABLE */;
@@ -4993,7 +4993,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_res_http_minor;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_56;
+          goto s_n_llhttp__internal__n_error_57;
         }
       }
       /* UNREACHABLE */;
@@ -5056,7 +5056,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_store_http_major_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_57;
+          goto s_n_llhttp__internal__n_error_58;
         }
       }
       /* UNREACHABLE */;
@@ -5080,7 +5080,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_res;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_60;
+          goto s_n_llhttp__internal__n_error_61;
         }
       }
       /* UNREACHABLE */;
@@ -5105,7 +5105,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_req_or_res_method_2;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_58;
+          goto s_n_llhttp__internal__n_error_59;
         }
       }
       /* UNREACHABLE */;
@@ -5129,7 +5129,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_req_or_res_method_3;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_58;
+          goto s_n_llhttp__internal__n_error_59;
         }
       }
       /* UNREACHABLE */;
@@ -5150,7 +5150,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_or_res_method_3;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_58;
+          goto s_n_llhttp__internal__n_error_59;
         }
       }
       /* UNREACHABLE */;
@@ -5167,7 +5167,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_or_res_method_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_58;
+          goto s_n_llhttp__internal__n_error_59;
         }
       }
       /* UNREACHABLE */;
@@ -5236,7 +5236,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_46: {
+  s_n_llhttp__internal__n_error_47: {
     state->error = 0x7;
     state->reason = "Invalid characters in url";
     state->error_pos = (const char*) p;
@@ -5751,6 +5751,16 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
+  s_n_llhttp__internal__n_invoke_test_flags_6: {
+    switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
+      case 1:
+        goto s_n_llhttp__internal__n_header_value_discard_ws;
+      default:
+        goto s_n_llhttp__internal__n_error_22;
+    }
+    /* UNREACHABLE */;
+    abort();
+  }
   s_n_llhttp__internal__n_error_23: {
     state->error = 0xb;
     state->reason = "Empty Content-Length";
@@ -5871,6 +5881,16 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
+  s_n_llhttp__internal__n_invoke_test_flags_7: {
+    switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
+      case 1:
+        goto s_n_llhttp__internal__n_header_value_discard_lws;
+      default:
+        goto s_n_llhttp__internal__n_error_24;
+    }
+    /* UNREACHABLE */;
+    abort();
+  }
   s_n_llhttp__internal__n_invoke_update_header_state_1: {
     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
       default:
@@ -5889,6 +5909,25 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
+  s_n_llhttp__internal__n_error_25: {
+    state->error = 0xa;
+    state->reason = "Unexpected whitespace after header value";
+    state->error_pos = (const char*) p;
+    state->_current = (void*) (intptr_t) s_error;
+    return s_error;
+    /* UNREACHABLE */;
+    abort();
+  }
+  s_n_llhttp__internal__n_invoke_test_flags_8: {
+    switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
+      case 1:
+        goto s_n_llhttp__internal__n_invoke_load_header_state_3;
+      default:
+        goto s_n_llhttp__internal__n_error_25;
+    }
+    /* UNREACHABLE */;
+    abort();
+  }
   s_n_llhttp__internal__n_invoke_update_header_state_2: {
     switch (llhttp__internal__c_update_header_state(state, p, endp)) {
       default:
@@ -5945,7 +5984,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_25: {
+  s_n_llhttp__internal__n_error_26: {
     state->error = 0x3;
     state->reason = "Missing expected LF after header value";
     state->error_pos = (const char*) p;
@@ -6017,14 +6056,14 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) p;
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_26;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_27;
       return s_error;
     }
-    goto s_n_llhttp__internal__n_error_26;
+    goto s_n_llhttp__internal__n_error_27;
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_6: {
+  s_n_llhttp__internal__n_invoke_test_flags_9: {
     switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
       case 1:
         goto s_n_llhttp__internal__n_header_value_lenient;
@@ -6132,10 +6171,10 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) p;
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_28;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_29;
       return s_error;
     }
-    goto s_n_llhttp__internal__n_error_28;
+    goto s_n_llhttp__internal__n_error_29;
     /* UNREACHABLE */;
     abort();
   }
@@ -6167,14 +6206,14 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) p;
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_29;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_30;
       return s_error;
     }
-    goto s_n_llhttp__internal__n_error_29;
+    goto s_n_llhttp__internal__n_error_30;
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_27: {
+  s_n_llhttp__internal__n_error_28: {
     state->error = 0x4;
     state->reason = "Duplicate Content-Length";
     state->error_pos = (const char*) p;
@@ -6183,12 +6222,12 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_7: {
-    switch (llhttp__internal__c_test_flags_7(state, p, endp)) {
+  s_n_llhttp__internal__n_invoke_test_flags_10: {
+    switch (llhttp__internal__c_test_flags_10(state, p, endp)) {
       case 0:
         goto s_n_llhttp__internal__n_header_value_content_length;
       default:
-        goto s_n_llhttp__internal__n_error_27;
+        goto s_n_llhttp__internal__n_error_28;
     }
     /* UNREACHABLE */;
     abort();
@@ -6203,11 +6242,11 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) (p + 1);
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_31;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_32;
       return s_error;
     }
     p++;
-    goto s_n_llhttp__internal__n_error_31;
+    goto s_n_llhttp__internal__n_error_32;
     /* UNREACHABLE */;
     abort();
   }
@@ -6229,15 +6268,15 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) (p + 1);
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_30;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_31;
       return s_error;
     }
     p++;
-    goto s_n_llhttp__internal__n_error_30;
+    goto s_n_llhttp__internal__n_error_31;
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_9: {
+  s_n_llhttp__internal__n_invoke_test_flags_12: {
     switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
       case 0:
         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_7;
@@ -6250,7 +6289,7 @@ static llparse_state_t llhttp__internal_
   s_n_llhttp__internal__n_invoke_load_type_1: {
     switch (llhttp__internal__c_load_type(state, p, endp)) {
       case 1:
-        goto s_n_llhttp__internal__n_invoke_test_flags_9;
+        goto s_n_llhttp__internal__n_invoke_test_flags_12;
       default:
         goto s_n_llhttp__internal__n_header_value_te_chunked;
     }
@@ -6281,7 +6320,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_10: {
+  s_n_llhttp__internal__n_invoke_test_flags_13: {
     switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
       case 0:
         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_8;
@@ -6294,7 +6333,7 @@ static llparse_state_t llhttp__internal_
   s_n_llhttp__internal__n_invoke_load_type_2: {
     switch (llhttp__internal__c_load_type(state, p, endp)) {
       case 1:
-        goto s_n_llhttp__internal__n_invoke_test_flags_10;
+        goto s_n_llhttp__internal__n_invoke_test_flags_13;
       default:
         goto s_n_llhttp__internal__n_invoke_or_flags_17;
     }
@@ -6309,8 +6348,8 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_8: {
-    switch (llhttp__internal__c_test_flags_8(state, p, endp)) {
+  s_n_llhttp__internal__n_invoke_test_flags_11: {
+    switch (llhttp__internal__c_test_flags_11(state, p, endp)) {
       case 1:
         goto s_n_llhttp__internal__n_invoke_load_type_2;
       default:
@@ -6332,9 +6371,9 @@ static llparse_state_t llhttp__internal_
       case 1:
         goto s_n_llhttp__internal__n_header_value_connection;
       case 2:
-        goto s_n_llhttp__internal__n_invoke_test_flags_7;
+        goto s_n_llhttp__internal__n_invoke_test_flags_10;
       case 3:
-        goto s_n_llhttp__internal__n_invoke_test_flags_8;
+        goto s_n_llhttp__internal__n_invoke_test_flags_11;
       case 4:
         goto s_n_llhttp__internal__n_invoke_or_flags_18;
       default:
@@ -6379,7 +6418,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_32: {
+  s_n_llhttp__internal__n_error_33: {
     state->error = 0xa;
     state->reason = "Invalid header token";
     state->error_pos = (const char*) p;
@@ -6445,7 +6484,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_33: {
+  s_n_llhttp__internal__n_error_34: {
     state->error = 0x7;
     state->reason = "Expected CRLF";
     state->error_pos = (const char*) p;
@@ -6471,7 +6510,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_34: {
+  s_n_llhttp__internal__n_error_35: {
     state->error = 0x9;
     state->reason = "Expected CRLF after version";
     state->error_pos = (const char*) p;
@@ -6488,7 +6527,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_35: {
+  s_n_llhttp__internal__n_error_36: {
     state->error = 0x9;
     state->reason = "Invalid minor version";
     state->error_pos = (const char*) p;
@@ -6497,7 +6536,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_36: {
+  s_n_llhttp__internal__n_error_37: {
     state->error = 0x9;
     state->reason = "Expected dot";
     state->error_pos = (const char*) p;
@@ -6514,7 +6553,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_37: {
+  s_n_llhttp__internal__n_error_38: {
     state->error = 0x9;
     state->reason = "Invalid major version";
     state->error_pos = (const char*) p;
@@ -6523,7 +6562,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_39: {
+  s_n_llhttp__internal__n_error_40: {
     state->error = 0x8;
     state->reason = "Expected HTTP/";
     state->error_pos = (const char*) p;
@@ -6532,7 +6571,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_38: {
+  s_n_llhttp__internal__n_error_39: {
     state->error = 0x8;
     state->reason = "Expected SOURCE method for ICE/x.x request";
     state->error_pos = (const char*) p;
@@ -6544,7 +6583,7 @@ static llparse_state_t llhttp__internal_
   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_38;
+        goto s_n_llhttp__internal__n_error_39;
       default:
         goto s_n_llhttp__internal__n_req_http_major;
     }
@@ -6619,7 +6658,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_40: {
+  s_n_llhttp__internal__n_error_41: {
     state->error = 0x7;
     state->reason = "Invalid char in url fragment start";
     state->error_pos = (const char*) p;
@@ -6679,7 +6718,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_41: {
+  s_n_llhttp__internal__n_error_42: {
     state->error = 0x7;
     state->reason = "Invalid char in url query";
     state->error_pos = (const char*) p;
@@ -6688,7 +6727,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_42: {
+  s_n_llhttp__internal__n_error_43: {
     state->error = 0x7;
     state->reason = "Invalid char in url path";
     state->error_pos = (const char*) p;
@@ -6799,7 +6838,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_43: {
+  s_n_llhttp__internal__n_error_44: {
     state->error = 0x7;
     state->reason = "Double @ in url";
     state->error_pos = (const char*) p;
@@ -6808,7 +6847,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_44: {
+  s_n_llhttp__internal__n_error_45: {
     state->error = 0x7;
     state->reason = "Unexpected char in url server";
     state->error_pos = (const char*) p;
@@ -6817,7 +6856,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_45: {
+  s_n_llhttp__internal__n_error_46: {
     state->error = 0x7;
     state->reason = "Unexpected char in url server";
     state->error_pos = (const char*) p;
@@ -6826,7 +6865,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_47: {
+  s_n_llhttp__internal__n_error_48: {
     state->error = 0x7;
     state->reason = "Unexpected char in url schema";
     state->error_pos = (const char*) p;
@@ -6835,7 +6874,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_48: {
+  s_n_llhttp__internal__n_error_49: {
     state->error = 0x7;
     state->reason = "Unexpected char in url schema";
     state->error_pos = (const char*) p;
@@ -6844,7 +6883,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_49: {
+  s_n_llhttp__internal__n_error_50: {
     state->error = 0x7;
     state->reason = "Unexpected start char in url";
     state->error_pos = (const char*) p;
@@ -6863,7 +6902,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_50: {
+  s_n_llhttp__internal__n_error_51: {
     state->error = 0x6;
     state->reason = "Expected space after method";
     state->error_pos = (const char*) p;
@@ -6880,7 +6919,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_59: {
+  s_n_llhttp__internal__n_error_60: {
     state->error = 0x6;
     state->reason = "Invalid method encountered";
     state->error_pos = (const char*) p;
@@ -6889,7 +6928,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_51: {
+  s_n_llhttp__internal__n_error_52: {
     state->error = 0xd;
     state->reason = "Response overflow";
     state->error_pos = (const char*) p;
@@ -6901,14 +6940,14 @@ static llparse_state_t llhttp__internal_
   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_51;
+        goto s_n_llhttp__internal__n_error_52;
       default:
         goto s_n_llhttp__internal__n_res_status_code;
     }
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_52: {
+  s_n_llhttp__internal__n_error_53: {
     state->error = 0x2;
     state->reason = "Expected LF after CR";
     state->error_pos = (const char*) p;
@@ -6953,7 +6992,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_53: {
+  s_n_llhttp__internal__n_error_54: {
     state->error = 0xd;
     state->reason = "Invalid response status";
     state->error_pos = (const char*) p;
@@ -6970,7 +7009,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_54: {
+  s_n_llhttp__internal__n_error_55: {
     state->error = 0x9;
     state->reason = "Expected space after version";
     state->error_pos = (const char*) p;
@@ -6987,7 +7026,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_55: {
+  s_n_llhttp__internal__n_error_56: {
     state->error = 0x9;
     state->reason = "Invalid minor version";
     state->error_pos = (const char*) p;
@@ -6996,7 +7035,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_56: {
+  s_n_llhttp__internal__n_error_57: {
     state->error = 0x9;
     state->reason = "Expected dot";
     state->error_pos = (const char*) p;
@@ -7013,7 +7052,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_57: {
+  s_n_llhttp__internal__n_error_58: {
     state->error = 0x9;
     state->reason = "Invalid major version";
     state->error_pos = (const char*) p;
@@ -7022,7 +7061,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_60: {
+  s_n_llhttp__internal__n_error_61: {
     state->error = 0x8;
     state->reason = "Expected HTTP/";
     state->error_pos = (const char*) p;
@@ -7047,7 +7086,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_58: {
+  s_n_llhttp__internal__n_error_59: {
     state->error = 0x8;
     state->reason = "Invalid word encountered";
     state->error_pos = (const char*) p;
@@ -7481,7 +7520,7 @@ enum llparse_state_e {
   s_n_llhttp__internal__n_header_value_lws,
   s_n_llhttp__internal__n_header_value_almost_done,
   s_n_llhttp__internal__n_header_value_lenient,
-  s_n_llhttp__internal__n_error_21,
+  s_n_llhttp__internal__n_error_22,
   s_n_llhttp__internal__n_header_value_otherwise,
   s_n_llhttp__internal__n_header_value_connection_token,
   s_n_llhttp__internal__n_header_value_connection_ws,
@@ -7489,12 +7528,12 @@ enum llparse_state_e {
   s_n_llhttp__internal__n_header_value_connection_2,
   s_n_llhttp__internal__n_header_value_connection_3,
   s_n_llhttp__internal__n_header_value_connection,
-  s_n_llhttp__internal__n_error_23,
   s_n_llhttp__internal__n_error_24,
+  s_n_llhttp__internal__n_error_25,
   s_n_llhttp__internal__n_header_value_content_length_ws,
   s_n_llhttp__internal__n_header_value_content_length,
+  s_n_llhttp__internal__n_error_27,
   s_n_llhttp__internal__n_error_26,
-  s_n_llhttp__internal__n_error_25,
   s_n_llhttp__internal__n_header_value_te_token_ows,
   s_n_llhttp__internal__n_header_value,
   s_n_llhttp__internal__n_header_value_te_token,
@@ -7924,7 +7963,7 @@ int llhttp__internal__c_update_header_st
   return 0;
 }
 
-int llhttp__internal__c_test_flags_7(
+int llhttp__internal__c_test_flags_10(
     llhttp__internal_t* state,
     const unsigned char* p,
     const unsigned char* endp) {
@@ -7965,7 +8004,7 @@ int llhttp__internal__c_or_flags_15(
   return 0;
 }
 
-int llhttp__internal__c_test_flags_8(
+int llhttp__internal__c_test_flags_11(
     llhttp__internal_t* state,
     const unsigned char* p,
     const unsigned char* endp) {
@@ -8676,11 +8715,11 @@ static llparse_state_t llhttp__internal_
       switch (*p) {
         case 9: {
           p++;
-          goto s_n_llhttp__internal__n_error_17;
+          goto s_n_llhttp__internal__n_invoke_test_flags_6;
         }
         case ' ': {
           p++;
-          goto s_n_llhttp__internal__n_error_17;
+          goto s_n_llhttp__internal__n_invoke_test_flags_6;
         }
         default: {
           goto s_n_llhttp__internal__n_invoke_load_header_state;
@@ -8700,7 +8739,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_header_value_discard_lws;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_19;
+          goto s_n_llhttp__internal__n_invoke_test_flags_7;
         }
       }
       /* UNREACHABLE */;
@@ -8713,10 +8752,10 @@ static llparse_state_t llhttp__internal_
       }
       switch (*p) {
         case 9: {
-          goto s_n_llhttp__internal__n_invoke_load_header_state_3;
+          goto s_n_llhttp__internal__n_invoke_test_flags_8;
         }
         case ' ': {
-          goto s_n_llhttp__internal__n_invoke_load_header_state_3;
+          goto s_n_llhttp__internal__n_invoke_test_flags_8;
         }
         default: {
           goto s_n_llhttp__internal__n_invoke_load_header_state_4;
@@ -8736,7 +8775,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_header_value_lws;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_20;
+          goto s_n_llhttp__internal__n_error_21;
         }
       }
       /* UNREACHABLE */;
@@ -8762,8 +8801,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_21:
-    s_n_llhttp__internal__n_error_21: {
+    case s_n_llhttp__internal__n_error_22:
+    s_n_llhttp__internal__n_error_22: {
       state->error = 0xa;
       state->reason = "Invalid header value char";
       state->error_pos = (const char*) p;
@@ -8782,7 +8821,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_invoke_test_flags_6;
+          goto s_n_llhttp__internal__n_invoke_test_flags_9;
         }
       }
       /* UNREACHABLE */;
@@ -8959,8 +8998,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_23:
-    s_n_llhttp__internal__n_error_23: {
+    case s_n_llhttp__internal__n_error_24:
+    s_n_llhttp__internal__n_error_24: {
       state->error = 0xb;
       state->reason = "Content-Length overflow";
       state->error_pos = (const char*) p;
@@ -8969,8 +9008,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_24:
-    s_n_llhttp__internal__n_error_24: {
+    case s_n_llhttp__internal__n_error_25:
+    s_n_llhttp__internal__n_error_25: {
       state->error = 0xb;
       state->reason = "Invalid character in Content-Length";
       state->error_pos = (const char*) p;
@@ -9065,8 +9104,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_26:
-    s_n_llhttp__internal__n_error_26: {
+    case s_n_llhttp__internal__n_error_27:
+    s_n_llhttp__internal__n_error_27: {
       state->error = 0xf;
       state->reason = "Invalid `Transfer-Encoding` header value";
       state->error_pos = (const char*) p;
@@ -9075,8 +9114,8 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */;
       abort();
     }
-    case s_n_llhttp__internal__n_error_25:
-    s_n_llhttp__internal__n_error_25: {
+    case s_n_llhttp__internal__n_error_26:
+    s_n_llhttp__internal__n_error_26: {
       state->error = 0xf;
       state->reason = "Invalid `Transfer-Encoding` header value";
       state->error_pos = (const char*) p;
@@ -9304,7 +9343,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_span_end_llhttp__on_header_field_2;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_27;
+          goto s_n_llhttp__internal__n_error_28;
         }
       }
       /* UNREACHABLE */;
@@ -9658,7 +9697,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_url_skip_lf_to_http09;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_28;
+          goto s_n_llhttp__internal__n_error_29;
         }
       }
       /* UNREACHABLE */;
@@ -9675,7 +9714,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_header_field_start;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_29;
+          goto s_n_llhttp__internal__n_error_30;
         }
       }
       /* UNREACHABLE */;
@@ -9696,7 +9735,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_http_end_1;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_29;
+          goto s_n_llhttp__internal__n_error_30;
         }
       }
       /* UNREACHABLE */;
@@ -9759,7 +9798,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_store_http_minor;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_30;
+          goto s_n_llhttp__internal__n_error_31;
         }
       }
       /* UNREACHABLE */;
@@ -9776,7 +9815,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_http_minor;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_31;
+          goto s_n_llhttp__internal__n_error_32;
         }
       }
       /* UNREACHABLE */;
@@ -9839,7 +9878,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_invoke_store_http_major;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_32;
+          goto s_n_llhttp__internal__n_error_33;
         }
       }
       /* UNREACHABLE */;
@@ -9863,7 +9902,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_req_http_start_1;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_34;
+          goto s_n_llhttp__internal__n_error_35;
         }
       }
       /* UNREACHABLE */;
@@ -9887,7 +9926,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_req_http_start_2;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_34;
+          goto s_n_llhttp__internal__n_error_35;
         }
       }
       /* UNREACHABLE */;
@@ -9912,7 +9951,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_http_start_2;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_34;
+          goto s_n_llhttp__internal__n_error_35;
         }
       }
       /* UNREACHABLE */;
@@ -9966,7 +10005,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_span_end_llhttp__on_url_8;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_35;
+          goto s_n_llhttp__internal__n_error_36;
         }
       }
       /* UNREACHABLE */;
@@ -10023,7 +10062,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_span_end_stub_query_3;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_36;
+          goto s_n_llhttp__internal__n_error_37;
         }
       }
       /* UNREACHABLE */;
@@ -10053,7 +10092,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_query;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_37;
+          goto s_n_llhttp__internal__n_error_38;
         }
       }
       /* UNREACHABLE */;
@@ -10194,10 +10233,10 @@ static llparse_state_t llhttp__internal_
         }
         case 7: {
           p++;
-          goto s_n_llhttp__internal__n_error_38;
+          goto s_n_llhttp__internal__n_error_39;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_39;
+          goto s_n_llhttp__internal__n_error_40;
         }
       }
       /* UNREACHABLE */;
@@ -10252,7 +10291,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_server_with_at;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_40;
+          goto s_n_llhttp__internal__n_error_41;
         }
       }
       /* UNREACHABLE */;
@@ -10269,7 +10308,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_server;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_42;
+          goto s_n_llhttp__internal__n_error_43;
         }
       }
       /* UNREACHABLE */;
@@ -10283,22 +10322,22 @@ static llparse_state_t llhttp__internal_
       switch (*p) {
         case 10: {
           p++;
-          goto s_n_llhttp__internal__n_error_41;
+          goto s_n_llhttp__internal__n_error_42;
         }
         case 13: {
           p++;
-          goto s_n_llhttp__internal__n_error_41;
+          goto s_n_llhttp__internal__n_error_42;
         }
         case ' ': {
           p++;
-          goto s_n_llhttp__internal__n_error_41;
+          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_42;
+          goto s_n_llhttp__internal__n_error_43;
         }
       }
       /* UNREACHABLE */;
@@ -10340,7 +10379,7 @@ static llparse_state_t llhttp__internal_
       switch (lookup_table[(uint8_t) *p]) {
         case 1: {
           p++;
-          goto s_n_llhttp__internal__n_error_41;
+          goto s_n_llhttp__internal__n_error_42;
         }
         case 2: {
           goto s_n_llhttp__internal__n_span_end_stub_schema;
@@ -10350,7 +10389,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_schema;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_43;
+          goto s_n_llhttp__internal__n_error_44;
         }
       }
       /* UNREACHABLE */;
@@ -10382,7 +10421,7 @@ static llparse_state_t llhttp__internal_
       switch (lookup_table[(uint8_t) *p]) {
         case 1: {
           p++;
-          goto s_n_llhttp__internal__n_error_41;
+          goto s_n_llhttp__internal__n_error_42;
         }
         case 2: {
           goto s_n_llhttp__internal__n_span_start_stub_path_2;
@@ -10391,7 +10430,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_url_schema;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_44;
+          goto s_n_llhttp__internal__n_error_45;
         }
       }
       /* UNREACHABLE */;
@@ -10447,7 +10486,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_req_spaces_before_url;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_45;
+          goto s_n_llhttp__internal__n_error_46;
         }
       }
       /* UNREACHABLE */;
@@ -10472,7 +10511,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10497,7 +10536,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_2;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -10522,7 +10561,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10547,7 +10586,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_6;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -10565,7 +10604,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10586,7 +10625,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_7;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -10607,7 +10646,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10632,7 +10671,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10657,7 +10696,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_9;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -10682,7 +10721,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_10;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -10707,7 +10746,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10732,7 +10771,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10753,7 +10792,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10778,7 +10817,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_15;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -10803,7 +10842,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10828,7 +10867,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10853,7 +10892,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10871,7 +10910,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10892,7 +10931,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_21;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -10913,7 +10952,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_19;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -10938,7 +10977,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_22;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -10967,7 +11006,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -10992,7 +11031,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11017,7 +11056,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11042,7 +11081,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11067,7 +11106,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_27;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11092,7 +11131,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_31;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11117,7 +11156,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_32;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11138,7 +11177,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11155,7 +11194,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_30;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11177,7 +11216,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_29;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11202,7 +11241,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_34;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11224,7 +11263,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11253,7 +11292,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_33;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11278,7 +11317,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11303,7 +11342,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_38;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11324,7 +11363,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_38;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11341,7 +11380,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11366,7 +11405,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_40;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11391,7 +11430,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11416,7 +11455,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_42;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11441,7 +11480,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11466,7 +11505,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11491,7 +11530,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_46;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11516,7 +11555,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11541,7 +11580,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_49;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11562,7 +11601,7 @@ static llparse_state_t llhttp__internal_
           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_54;
         }
       }
       /* UNREACHABLE */;
@@ -11587,7 +11626,7 @@ static llparse_state_t llhttp__internal_
           return s_n_llhttp__internal__n_start_req_50;
         }
         case kMatchMismatch: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11612,7 +11651,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_50;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11629,7 +11668,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_45;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11702,7 +11741,7 @@ static llparse_state_t llhttp__internal_
           goto s_n_llhttp__internal__n_start_req_44;
         }
         default: {
-          goto s_n_llhttp__internal__n_error_53;
+          goto s_n_llhttp__internal__n_error_54;
         }
       }
       /* UNREACHABLE */;
@@ -11787,7 +11826,7 @@ static llparse_state_t llhttp__internal_
           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_48;
         }
       }
       /* UNREACHABLE */;
@@ -11867,7 +11906,7 @@ static llparse_state_t llhttp__internal_
           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_49;
         }
       }
       /* UNREACHABLE */;
@@ -11930,7 +11969,7 @@ static llparse_state_t llhttp__internal_
           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_50;
         }
       }
       /* UNREACHABLE */;
@@ -11947,7 +11986,7 @@ static llparse_state_t llhttp__internal_
           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_51;
         }
       }
       /* UNREACHABLE */;
@@ -12010,7 +12049,7 @@ static llparse_state_t llhttp__internal_
           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_52;
         }
       }
       /* UNREACHABLE */;
@@ -12034,7 +12073,7 @@ static llparse_state_t llhttp__internal_
           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_55;
         }
       }
       /* UNREACHABLE */;
@@ -12059,7 +12098,7 @@ static llparse_state_t llhttp__internal_
           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_53;
         }
       }
       /* UNREACHABLE */;
@@ -12083,7 +12122,7 @@ static llparse_state_t llhttp__internal_
           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_53;
         }
       }
       /* UNREACHABLE */;
@@ -12104,7 +12143,7 @@ static llparse_state_t llhttp__internal_
           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_53;
         }
       }
       /* UNREACHABLE */;
@@ -12121,7 +12160,7 @@ static llparse_state_t llhttp__internal_
           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_53;
         }
       }
       /* UNREACHABLE */;
@@ -12181,7 +12220,7 @@ static llparse_state_t llhttp__internal_
       /* UNREACHABLE */
       abort();
   }
-  s_n_llhttp__internal__n_error_41: {
+  s_n_llhttp__internal__n_error_42: {
     state->error = 0x7;
     state->reason = "Invalid characters in url";
     state->error_pos = (const char*) p;
@@ -12652,6 +12691,16 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
+  s_n_llhttp__internal__n_invoke_test_flags_6: {
+    switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
+      case 1:
+        goto s_n_llhttp__internal__n_header_value_discard_ws;
+      default:
+        goto s_n_llhttp__internal__n_error_17;
+    }
+    /* UNREACHABLE */;
+    abort();
+  }
   s_n_llhttp__internal__n_error_18: {
     state->error = 0xb;
     state->reason = "Empty Content-Length";
@@ -12772,6 +12821,16 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
+  s_n_llhttp__internal__n_invoke_test_flags_7: {
+    switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
+      case 1:
+        goto s_n_llhttp__internal__n_header_value_discard_lws;
+      default:
+        goto s_n_llhttp__internal__n_error_19;
+    }
+    /* UNREACHABLE */;
+    abort();
+  }
   s_n_llhttp__internal__n_invoke_update_header_state_1: {
     switch (llhttp__internal__c_update_header_state_1(state, p, endp)) {
       default:
@@ -12790,6 +12849,25 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
+  s_n_llhttp__internal__n_error_20: {
+    state->error = 0xa;
+    state->reason = "Unexpected whitespace after header value";
+    state->error_pos = (const char*) p;
+    state->_current = (void*) (intptr_t) s_error;
+    return s_error;
+    /* UNREACHABLE */;
+    abort();
+  }
+  s_n_llhttp__internal__n_invoke_test_flags_8: {
+    switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
+      case 1:
+        goto s_n_llhttp__internal__n_invoke_load_header_state_3;
+      default:
+        goto s_n_llhttp__internal__n_error_20;
+    }
+    /* UNREACHABLE */;
+    abort();
+  }
   s_n_llhttp__internal__n_invoke_update_header_state_2: {
     switch (llhttp__internal__c_update_header_state(state, p, endp)) {
       default:
@@ -12846,7 +12924,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_20: {
+  s_n_llhttp__internal__n_error_21: {
     state->error = 0x3;
     state->reason = "Missing expected LF after header value";
     state->error_pos = (const char*) p;
@@ -12918,14 +12996,14 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) p;
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_21;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_22;
       return s_error;
     }
-    goto s_n_llhttp__internal__n_error_21;
+    goto s_n_llhttp__internal__n_error_22;
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_6: {
+  s_n_llhttp__internal__n_invoke_test_flags_9: {
     switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
       case 1:
         goto s_n_llhttp__internal__n_header_value_lenient;
@@ -13033,10 +13111,10 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) p;
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_23;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_24;
       return s_error;
     }
-    goto s_n_llhttp__internal__n_error_23;
+    goto s_n_llhttp__internal__n_error_24;
     /* UNREACHABLE */;
     abort();
   }
@@ -13068,14 +13146,14 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) p;
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_24;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_25;
       return s_error;
     }
-    goto s_n_llhttp__internal__n_error_24;
+    goto s_n_llhttp__internal__n_error_25;
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_22: {
+  s_n_llhttp__internal__n_error_23: {
     state->error = 0x4;
     state->reason = "Duplicate Content-Length";
     state->error_pos = (const char*) p;
@@ -13084,12 +13162,12 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_7: {
-    switch (llhttp__internal__c_test_flags_7(state, p, endp)) {
+  s_n_llhttp__internal__n_invoke_test_flags_10: {
+    switch (llhttp__internal__c_test_flags_10(state, p, endp)) {
       case 0:
         goto s_n_llhttp__internal__n_header_value_content_length;
       default:
-        goto s_n_llhttp__internal__n_error_22;
+        goto s_n_llhttp__internal__n_error_23;
     }
     /* UNREACHABLE */;
     abort();
@@ -13104,11 +13182,11 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) (p + 1);
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_26;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_27;
       return s_error;
     }
     p++;
-    goto s_n_llhttp__internal__n_error_26;
+    goto s_n_llhttp__internal__n_error_27;
     /* UNREACHABLE */;
     abort();
   }
@@ -13130,15 +13208,15 @@ static llparse_state_t llhttp__internal_
     if (err != 0) {
       state->error = err;
       state->error_pos = (const char*) (p + 1);
-      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_25;
+      state->_current = (void*) (intptr_t) s_n_llhttp__internal__n_error_26;
       return s_error;
     }
     p++;
-    goto s_n_llhttp__internal__n_error_25;
+    goto s_n_llhttp__internal__n_error_26;
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_9: {
+  s_n_llhttp__internal__n_invoke_test_flags_12: {
     switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
       case 0:
         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_7;
@@ -13151,7 +13229,7 @@ static llparse_state_t llhttp__internal_
   s_n_llhttp__internal__n_invoke_load_type_1: {
     switch (llhttp__internal__c_load_type(state, p, endp)) {
       case 1:
-        goto s_n_llhttp__internal__n_invoke_test_flags_9;
+        goto s_n_llhttp__internal__n_invoke_test_flags_12;
       default:
         goto s_n_llhttp__internal__n_header_value_te_chunked;
     }
@@ -13182,7 +13260,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_10: {
+  s_n_llhttp__internal__n_invoke_test_flags_13: {
     switch (llhttp__internal__c_test_flags_2(state, p, endp)) {
       case 0:
         goto s_n_llhttp__internal__n_span_end_llhttp__on_header_value_8;
@@ -13195,7 +13273,7 @@ static llparse_state_t llhttp__internal_
   s_n_llhttp__internal__n_invoke_load_type_2: {
     switch (llhttp__internal__c_load_type(state, p, endp)) {
       case 1:
-        goto s_n_llhttp__internal__n_invoke_test_flags_10;
+        goto s_n_llhttp__internal__n_invoke_test_flags_13;
       default:
         goto s_n_llhttp__internal__n_invoke_or_flags_17;
     }
@@ -13210,8 +13288,8 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_invoke_test_flags_8: {
-    switch (llhttp__internal__c_test_flags_8(state, p, endp)) {
+  s_n_llhttp__internal__n_invoke_test_flags_11: {
+    switch (llhttp__internal__c_test_flags_11(state, p, endp)) {
       case 1:
         goto s_n_llhttp__internal__n_invoke_load_type_2;
       default:
@@ -13233,9 +13311,9 @@ static llparse_state_t llhttp__internal_
       case 1:
         goto s_n_llhttp__internal__n_header_value_connection;
       case 2:
-        goto s_n_llhttp__internal__n_invoke_test_flags_7;
+        goto s_n_llhttp__internal__n_invoke_test_flags_10;
       case 3:
-        goto s_n_llhttp__internal__n_invoke_test_flags_8;
+        goto s_n_llhttp__internal__n_invoke_test_flags_11;
       case 4:
         goto s_n_llhttp__internal__n_invoke_or_flags_18;
       default:
@@ -13280,7 +13358,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_27: {
+  s_n_llhttp__internal__n_error_28: {
     state->error = 0xa;
     state->reason = "Invalid header token";
     state->error_pos = (const char*) p;
@@ -13346,7 +13424,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_28: {
+  s_n_llhttp__internal__n_error_29: {
     state->error = 0x7;
     state->reason = "Expected CRLF";
     state->error_pos = (const char*) p;
@@ -13372,7 +13450,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_29: {
+  s_n_llhttp__internal__n_error_30: {
     state->error = 0x9;
     state->reason = "Expected CRLF after version";
     state->error_pos = (const char*) p;
@@ -13389,7 +13467,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_30: {
+  s_n_llhttp__internal__n_error_31: {
     state->error = 0x9;
     state->reason = "Invalid minor version";
     state->error_pos = (const char*) p;
@@ -13398,7 +13476,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_31: {
+  s_n_llhttp__internal__n_error_32: {
     state->error = 0x9;
     state->reason = "Expected dot";
     state->error_pos = (const char*) p;
@@ -13415,7 +13493,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_32: {
+  s_n_llhttp__internal__n_error_33: {
     state->error = 0x9;
     state->reason = "Invalid major version";
     state->error_pos = (const char*) p;
@@ -13424,7 +13502,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_34: {
+  s_n_llhttp__internal__n_error_35: {
     state->error = 0x8;
     state->reason = "Expected HTTP/";
     state->error_pos = (const char*) p;
@@ -13433,7 +13511,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_33: {
+  s_n_llhttp__internal__n_error_34: {
     state->error = 0x8;
     state->reason = "Expected SOURCE method for ICE/x.x request";
     state->error_pos = (const char*) p;
@@ -13445,7 +13523,7 @@ static llparse_state_t llhttp__internal_
   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_33;
+        goto s_n_llhttp__internal__n_error_34;
       default:
         goto s_n_llhttp__internal__n_req_http_major;
     }
@@ -13520,7 +13598,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_35: {
+  s_n_llhttp__internal__n_error_36: {
     state->error = 0x7;
     state->reason = "Invalid char in url fragment start";
     state->error_pos = (const char*) p;
@@ -13580,7 +13658,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_36: {
+  s_n_llhttp__internal__n_error_37: {
     state->error = 0x7;
     state->reason = "Invalid char in url query";
     state->error_pos = (const char*) p;
@@ -13589,7 +13667,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_37: {
+  s_n_llhttp__internal__n_error_38: {
     state->error = 0x7;
     state->reason = "Invalid char in url path";
     state->error_pos = (const char*) p;
@@ -13700,7 +13778,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_38: {
+  s_n_llhttp__internal__n_error_39: {
     state->error = 0x7;
     state->reason = "Double @ in url";
     state->error_pos = (const char*) p;
@@ -13709,7 +13787,7 @@ static llparse_state_t llhttp__internal_
     /* 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;
@@ -13718,7 +13796,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_40: {
+  s_n_llhttp__internal__n_error_41: {
     state->error = 0x7;
     state->reason = "Unexpected char in url server";
     state->error_pos = (const char*) p;
@@ -13727,7 +13805,7 @@ static llparse_state_t llhttp__internal_
     /* 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;
@@ -13736,7 +13814,7 @@ static llparse_state_t llhttp__internal_
     /* 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;
@@ -13745,7 +13823,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_44: {
+  s_n_llhttp__internal__n_error_45: {
     state->error = 0x7;
     state->reason = "Unexpected start char in url";
     state->error_pos = (const char*) p;
@@ -13764,7 +13842,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_45: {
+  s_n_llhttp__internal__n_error_46: {
     state->error = 0x6;
     state->reason = "Expected space after method";
     state->error_pos = (const char*) p;
@@ -13781,7 +13859,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_53: {
+  s_n_llhttp__internal__n_error_54: {
     state->error = 0x6;
     state->reason = "Invalid method encountered";
     state->error_pos = (const char*) p;
@@ -13790,7 +13868,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_46: {
+  s_n_llhttp__internal__n_error_47: {
     state->error = 0xd;
     state->reason = "Response overflow";
     state->error_pos = (const char*) p;
@@ -13802,7 +13880,7 @@ static llparse_state_t llhttp__internal_
   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_46;
+        goto s_n_llhttp__internal__n_error_47;
       default:
         goto s_n_llhttp__internal__n_res_status_code;
     }
@@ -13845,7 +13923,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_47: {
+  s_n_llhttp__internal__n_error_48: {
     state->error = 0xd;
     state->reason = "Invalid response status";
     state->error_pos = (const char*) p;
@@ -13862,7 +13940,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_48: {
+  s_n_llhttp__internal__n_error_49: {
     state->error = 0x9;
     state->reason = "Expected space after version";
     state->error_pos = (const char*) p;
@@ -13879,7 +13957,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_49: {
+  s_n_llhttp__internal__n_error_50: {
     state->error = 0x9;
     state->reason = "Invalid minor version";
     state->error_pos = (const char*) p;
@@ -13888,7 +13966,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_50: {
+  s_n_llhttp__internal__n_error_51: {
     state->error = 0x9;
     state->reason = "Expected dot";
     state->error_pos = (const char*) p;
@@ -13905,7 +13983,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_51: {
+  s_n_llhttp__internal__n_error_52: {
     state->error = 0x9;
     state->reason = "Invalid major version";
     state->error_pos = (const char*) p;
@@ -13914,7 +13992,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_54: {
+  s_n_llhttp__internal__n_error_55: {
     state->error = 0x8;
     state->reason = "Expected HTTP/";
     state->error_pos = (const char*) p;
@@ -13939,7 +14017,7 @@ static llparse_state_t llhttp__internal_
     /* UNREACHABLE */;
     abort();
   }
-  s_n_llhttp__internal__n_error_52: {
+  s_n_llhttp__internal__n_error_53: {
     state->error = 0x8;
     state->reason = "Invalid word encountered";
     state->error_pos = (const char*) p;
Index: node-v14.21.3/test/parallel/test-http-multi-line-headers.js
===================================================================
--- node-v14.21.3.orig/test/parallel/test-http-multi-line-headers.js
+++ node-v14.21.3/test/parallel/test-http-multi-line-headers.js
@@ -46,7 +46,8 @@ const server = net.createServer(function
 server.listen(0, common.mustCall(function() {
   http.get({
     host: '127.0.0.1',
-    port: this.address().port
+    port: this.address().port,
+    insecureHTTPParser: true
   }, common.mustCall(function(res) {
     assert.strictEqual(res.headers['content-type'],
                        'text/plain; x-unix-mode=0600; name="hello.txt"');
Index: node-v14.21.3/test/parallel/test-http-transfer-encoding-smuggling.js
===================================================================
--- node-v14.21.3.orig/test/parallel/test-http-transfer-encoding-smuggling.js
+++ node-v14.21.3/test/parallel/test-http-transfer-encoding-smuggling.js
@@ -71,10 +71,7 @@ const net = require('net');
     '',
   ].join('\r\n');
 
-  const server = http.createServer(common.mustCall((request, response) => {
-    assert.notStrictEqual(request.url, '/admin');
-    response.end('hello world');
-  }), 1);
+  const server = http.createServer(common.mustNotCall());
 
   server.listen(0, common.mustSucceed(() => {
     const client = net.connect(server.address().port, 'localhost');
Index: node-v14.21.3/deps/llhttp/include/llhttp.h
===================================================================
--- node-v14.21.3.orig/deps/llhttp/include/llhttp.h
+++ node-v14.21.3/deps/llhttp/include/llhttp.h
@@ -239,6 +239,7 @@ struct llhttp_settings_s {
   /* Possible return values 0, -1, `HPE_PAUSED` */
   llhttp_cb      on_message_begin;
 
+  /* Possible return values 0, -1, HPE_USER */
   llhttp_data_cb on_url;
   llhttp_data_cb on_status;
   llhttp_data_cb on_header_field;
openSUSE Build Service is sponsored by