 +
      ngx_http_close_connection(c);
  }
-
-@@ -3684,6 +3808,17 @@ ngx_http_close_connection(ngx_connection_t *c)
+ 
+@@ -3684,6 +3808,21 @@ ngx_http_close_connection(ngx_connection_t *c)
      ngx_log_debug1(NGX_LOG_DEBUG_HTTP, c->log, 0,
                     "close http connection: %d", c->fd);
-
+ 
 +#if (NGX_HTTP_V3)
 +
 +    if (c->quic) {

@@ -227,6 +229,17 @@ if [ $HTTP = YES ]; then
         . auto/module
     fi

+    if [ $HTTP_V3 = YES ]; then
+        ngx_module_name=ngx_http_v3_filter_module
+        ngx_module_incs=

 #define NGX_HTTP_VERSION_11                1001
 #define NGX_HTTP_VERSION_20                2000
+#define NGX_HTTP_VERSION_3                 3000
 
 #define NGX_HTTP_UNKNOWN                   0x0001
 #define NGX_HTTP_GET                       0x0002
@@ -323,6 +324,7 @@ typedef struct {
     ngx_chain_t                      *free;
 
     unsigned                          ssl:1;
+    unsigned                          quic:1;
     unsigned                          proxy_protocol:1;
 } ngx_http_connection_t;
 
@@ -445,6 +447,7 @@ struct ngx_http_request_s {
 
     ngx_http_connection_t            *http_connection;
     ngx_http_v2_stream_t             *stream;
+    ngx_http_v3_stream_t             *qstream;
 
     ngx_http_log_handler_pt           log_handler;
 
diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c
index c4f092e59..2f8514418 100644
--- a/src/http/ngx_http_request_body.c
