diff options
| author | Sergey Kandaurov <pluknet@nginx.com> | 2025-12-24 22:59:40 +0400 |
|---|---|---|
| committer | Sergey Kandaurov <s.kandaurov@f5.com> | 2026-01-29 14:52:41 +0400 |
| commit | cd12dc4f12489257e851654ec1883cf06fa0b095 (patch) | |
| tree | 7bb64d3056e361b366200d34283f9ef6feafe524 /src/http/modules | |
| parent | 349c72e8588c9b6f36f69b7789b3c7aac7a1bbdc (diff) | |
| download | nginx-cd12dc4f12489257e851654ec1883cf06fa0b095.tar.gz nginx-cd12dc4f12489257e851654ec1883cf06fa0b095.tar.bz2 | |
Proxy: fixed sending HTTP/2 buffered request body on next upstream.
If a buffered request body wasn't fully sent, such as on early upstream
response or limited by flow control, unsent buffers could remain in the
input or busy chains when switching to the next upstream server. This
resulted either in the invalid request sent or a stalled connection.
The fix is to reset chains similar to ngx_http_upstream_reinit().
Diffstat (limited to 'src/http/modules')
| -rw-r--r-- | src/http/modules/ngx_http_proxy_v2_module.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/http/modules/ngx_http_proxy_v2_module.c b/src/http/modules/ngx_http_proxy_v2_module.c index 17983a29d..f109fe94e 100644 --- a/src/http/modules/ngx_http_proxy_v2_module.c +++ b/src/http/modules/ngx_http_proxy_v2_module.c @@ -944,6 +944,8 @@ ngx_http_proxy_v2_reinit_request(ngx_http_request_t *r) ctx->rst = 0; ctx->goaway = 0; ctx->connection = NULL; + ctx->in = NULL; + ctx->busy = NULL; return NGX_OK; } |
