aboutsummaryrefslogtreecommitdiff
path: root/src/http/ngx_http_request.h
diff options
context:
space:
mode:
authorMaxim Dounin <mdounin@mdounin.ru>2017-03-07 18:49:31 +0300
committerMaxim Dounin <mdounin@mdounin.ru>2017-03-07 18:49:31 +0300
commitfca26c2e53d46549320a3b23ce0398c5921348dd (patch)
treea4fd901922aefe09ab8da00e8a8dd25cc6c33246 /src/http/ngx_http_request.h
parent422e0f8689e5cc08aa9023d4a67b6d9ce28a79e5 (diff)
downloadnginx-fca26c2e53d46549320a3b23ce0398c5921348dd.tar.gz
nginx-fca26c2e53d46549320a3b23ce0398c5921348dd.zip
Converted hc->busy/hc->free to use chain links.
Most notably, this fixes possible buffer overflows if number of large client header buffers in a virtual server is different from the one in the default server. Reported by Daniil Bondarev.
Diffstat (limited to 'src/http/ngx_http_request.h')
-rw-r--r--src/http/ngx_http_request.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/http/ngx_http_request.h b/src/http/ngx_http_request.h
index 4cda7549d..780a99f78 100644
--- a/src/http/ngx_http_request.h
+++ b/src/http/ngx_http_request.h
@@ -309,11 +309,10 @@ typedef struct {
#endif
#endif
- ngx_buf_t **busy;
+ ngx_chain_t *busy;
ngx_int_t nbusy;
- ngx_buf_t **free;
- ngx_int_t nfree;
+ ngx_chain_t *free;
unsigned ssl:1;
unsigned proxy_protocol:1;