diff options
author | Valentin Bartenev <vbart@nginx.com> | 2015-04-06 19:20:36 +0300 |
---|---|---|
committer | Valentin Bartenev <vbart@nginx.com> | 2015-04-06 19:20:36 +0300 |
commit | 3f72e18908bd71d20bca6923163ce8b5b194285d (patch) | |
tree | 5f61634bef4fc2b38ca3b573d5d114d4f7fce9ee | |
parent | 1329c4af80c93d5f0157728a009196199a42c472 (diff) | |
download | nginx-3f72e18908bd71d20bca6923163ce8b5b194285d.tar.gz |
Request body: always flush buffers if request buffering is off.
This fixes unbuffered proxying to SSL backends, since it prevents
ngx_ssl_send_chain() from accumulation of request body in the SSL
buffer.
-rw-r--r-- | src/http/ngx_http_request_body.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/http/ngx_http_request_body.c b/src/http/ngx_http_request_body.c index ac5b530ba..9c169845e 100644 --- a/src/http/ngx_http_request_body.c +++ b/src/http/ngx_http_request_body.c @@ -949,6 +949,7 @@ ngx_http_request_body_length_filter(ngx_http_request_t *r, ngx_chain_t *in) b->pos = cl->buf->pos; b->last = cl->buf->last; b->end = cl->buf->end; + b->flush = r->request_body_no_buffering; size = cl->buf->last - cl->buf->pos; @@ -1056,6 +1057,7 @@ ngx_http_request_body_chunked_filter(ngx_http_request_t *r, ngx_chain_t *in) b->pos = cl->buf->pos; b->last = cl->buf->last; b->end = cl->buf->end; + b->flush = r->request_body_no_buffering; *ll = tl; ll = &tl->next; |