aboutsummaryrefslogtreecommitdiff
path: root/src/http/v3/ngx_http_v3_request.c
diff options
context:
space:
mode:
authorRoman Arutyunyan <arut@nginx.com>2023-01-05 19:03:22 +0400
committerRoman Arutyunyan <arut@nginx.com>2023-01-05 19:03:22 +0400
commit0065ba68b08b8cf4eaf3c18266d1a93182f196ed (patch)
tree46f9b2cc161b96ba5654e24c3128f07e0c49ffc8 /src/http/v3/ngx_http_v3_request.c
parentfaa655f211612fcdac938d58095a4ab7f03969a9 (diff)
downloadnginx-0065ba68b08b8cf4eaf3c18266d1a93182f196ed.tar.gz
nginx-0065ba68b08b8cf4eaf3c18266d1a93182f196ed.zip
HTTP/3: insert count block timeout.
Previously, there was no timeout for a request stream blocked on insert count, which could result in infinite wait. Now client_header_timeout is set when stream is first blocked.
Diffstat (limited to 'src/http/v3/ngx_http_v3_request.c')
-rw-r--r--src/http/v3/ngx_http_v3_request.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/http/v3/ngx_http_v3_request.c b/src/http/v3/ngx_http_v3_request.c
index e8b84eabd..7bf61459f 100644
--- a/src/http/v3/ngx_http_v3_request.c
+++ b/src/http/v3/ngx_http_v3_request.c
@@ -555,6 +555,12 @@ ngx_http_v3_process_request(ngx_event_t *rev)
break;
}
+ if (!rev->timer_set) {
+ cscf = ngx_http_get_module_srv_conf(r,
+ ngx_http_core_module);
+ ngx_add_timer(rev, cscf->client_header_timeout);
+ }
+
if (ngx_handle_read_event(rev, 0) != NGX_OK) {
ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR);
}