diff options
author | Roman Arutyunyan <arut@nginx.com> | 2023-01-05 19:03:22 +0400 |
---|---|---|
committer | Roman Arutyunyan <arut@nginx.com> | 2023-01-05 19:03:22 +0400 |
commit | 0065ba68b08b8cf4eaf3c18266d1a93182f196ed (patch) | |
tree | 46f9b2cc161b96ba5654e24c3128f07e0c49ffc8 /src/http/v3/ngx_http_v3_request.c | |
parent | faa655f211612fcdac938d58095a4ab7f03969a9 (diff) | |
download | nginx-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.c | 6 |
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); } |