mirror of
https://github.com/nginx/nginx.git
synced 2025-06-07 17:52:38 +08:00
FastCGI: f->split_parts reset on request start.
Additionally, make sure to check for errors from ngx_http_parse_header_line() call after joining saved parts. There shouldn't be any errors, though check may help to catch bugs like missing f->split_parts reset. Reported by Lucas Molas.
This commit is contained in:
parent
8800f0c42b
commit
2f917b6d06
@ -1208,6 +1208,10 @@ ngx_http_fastcgi_reinit_request(ngx_http_request_t *r)
|
|||||||
f->fastcgi_stdout = 0;
|
f->fastcgi_stdout = 0;
|
||||||
f->large_stderr = 0;
|
f->large_stderr = 0;
|
||||||
|
|
||||||
|
if (f->split_parts) {
|
||||||
|
f->split_parts->nelts = 0;
|
||||||
|
}
|
||||||
|
|
||||||
r->state = 0;
|
r->state = 0;
|
||||||
|
|
||||||
return NGX_OK;
|
return NGX_OK;
|
||||||
@ -1488,6 +1492,13 @@ ngx_http_fastcgi_process_header(ngx_http_request_t *r)
|
|||||||
|
|
||||||
rc = ngx_http_parse_header_line(r, &buf, 1);
|
rc = ngx_http_parse_header_line(r, &buf, 1);
|
||||||
|
|
||||||
|
if (rc != NGX_OK) {
|
||||||
|
ngx_log_error(NGX_LOG_ALERT, r->connection->log, 0,
|
||||||
|
"invalid header after joining "
|
||||||
|
"FastCGI records");
|
||||||
|
return NGX_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
h->key.len = r->header_name_end - r->header_name_start;
|
h->key.len = r->header_name_end - r->header_name_start;
|
||||||
h->key.data = r->header_name_start;
|
h->key.data = r->header_name_start;
|
||||||
h->key.data[h->key.len] = '\0';
|
h->key.data[h->key.len] = '\0';
|
||||||
|
Loading…
Reference in New Issue
Block a user