aboutsummaryrefslogtreecommitdiff
path: root/src/http/ngx_http_request.c
diff options
context:
space:
mode:
authorRoman Arutyunyan <arut@nginx.com>2020-08-25 12:45:21 +0300
committerRoman Arutyunyan <arut@nginx.com>2020-08-25 12:45:21 +0300
commit693e55a4b232afc6f7b4ba8e25f07decd86baa21 (patch)
treed9182b7ca8d9c38b12ab739ac83b70c208f29fa9 /src/http/ngx_http_request.c
parent4e4d0938b9190713fbb4526d06ee731b6a1800a5 (diff)
downloadnginx-693e55a4b232afc6f7b4ba8e25f07decd86baa21.tar.gz
nginx-693e55a4b232afc6f7b4ba8e25f07decd86baa21.zip
HTTP/3: drop the unwanted remainder of the request.
As per HTTP/3 draft 29, section 4.1: When the server does not need to receive the remainder of the request, it MAY abort reading the request stream, send a complete response, and cleanly close the sending part of the stream.
Diffstat (limited to 'src/http/ngx_http_request.c')
-rw-r--r--src/http/ngx_http_request.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c
index 7dbbcceb2..e322fae4b 100644
--- a/src/http/ngx_http_request.c
+++ b/src/http/ngx_http_request.c
@@ -2819,6 +2819,13 @@ ngx_http_finalize_connection(ngx_http_request_t *r)
}
#endif
+#if (NGX_HTTP_QUIC)
+ if (r->connection->qs) {
+ ngx_http_close_request(r, 0);
+ return;
+ }
+#endif
+
clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
if (r->main->count != 1) {