]> git.kaiwu.me - nginx.git/commit
FastCGI: skip special bufs in buffered request body chain.
authorValentin Bartenev <vbart@nginx.com>
Mon, 11 Apr 2016 15:42:34 +0000 (18:42 +0300)
committerValentin Bartenev <vbart@nginx.com>
Mon, 11 Apr 2016 15:42:34 +0000 (18:42 +0300)
commit4c1b9fef65e9a992933ae0168e62bba279eabfab
tree8476beb5c5a5e46d306202742d96fc46dedcb8ec
parent400d42437cd7aba791ec2d874fe9badf6446638c
FastCGI: skip special bufs in buffered request body chain.

This prevents forming empty records out of such buffers.  Particularly it fixes
double end-of-stream records with chunked transfer encoding, or when HTTP/2 is
used and the END_STREAM flag has been sent without data.  In both cases there
is an empty buffer at the end of the request body chain with the "last_buf"
flag set.

The canonical libfcgi, as well as php implementation, tolerates such records,
while the HHVM parser is more strict and drops the connection (ticket #950).
src/http/modules/ngx_http_fastcgi_module.c