diff options
| author | David Carlier <devnexen@gmail.com> | 2026-02-20 05:08:09 +0000 |
|---|---|---|
| committer | Sergey Kandaurov <s.kandaurov@f5.com> | 2026-03-16 11:38:06 +0400 |
| commit | a29476464cc86092135401bdcad91e4d38ac6b6d (patch) | |
| tree | 6462a038d128d4947a7fe4897426e306f4b4cb06 /src/http/modules | |
| parent | bcd1a01d3bf54fb20de23356df0a23aa16487fd5 (diff) | |
| download | nginx-a29476464cc86092135401bdcad91e4d38ac6b6d.tar.gz nginx-a29476464cc86092135401bdcad91e4d38ac6b6d.tar.bz2 | |
gRPC: reset buffer chains on upstream reinit.
Previously, ctx->out was not cleared in ngx_http_grpc_reinit_request(),
which could cause queued HTTP/2 control frames (SETTINGS ACK, PING ACK,
WINDOW_UPDATE) to be sent on next upstream.
Additionally, ctx->in and ctx->busy needs to be cleared to avoid similar
problems with buffered request body fixed in cd12dc4f1.
Diffstat (limited to 'src/http/modules')
| -rw-r--r-- | src/http/modules/ngx_http_grpc_module.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/http/modules/ngx_http_grpc_module.c b/src/http/modules/ngx_http_grpc_module.c index 4c95525b4..cc3aebe59 100644 --- a/src/http/modules/ngx_http_grpc_module.c +++ b/src/http/modules/ngx_http_grpc_module.c @@ -1224,6 +1224,9 @@ ngx_http_grpc_reinit_request(ngx_http_request_t *r) ctx->rst = 0; ctx->goaway = 0; ctx->connection = NULL; + ctx->in = NULL; + ctx->busy = NULL; + ctx->out = NULL; return NGX_OK; } |
