Merge of r4016:

Fix ignored headers handling in fastcgi/scgi/uwsgi.

The bug had appeared in r3561 (fastcgi), r3638 (scgi), r3567 (uwsgi).
This commit is contained in:
Igor Sysoev 2011-08-29 14:13:46 +00:00
parent f9d38150d3
commit 2a8f8a74e6
3 changed files with 27 additions and 3 deletions

View File

@ -737,7 +737,15 @@ ngx_http_fastcgi_create_request(ngx_http_request_t *r)
lowcase_key = NULL;
if (flcf->header_params) {
ignored = ngx_palloc(r->pool, flcf->header_params * sizeof(void *));
n = 0;
part = &r->headers_in.headers.part;
while (part) {
n += part->nelts;
part = part->next;
}
ignored = ngx_palloc(r->pool, n * sizeof(void *));
if (ignored == NULL) {
return NGX_ERROR;
}

View File

@ -561,7 +561,15 @@ ngx_http_scgi_create_request(ngx_http_request_t *r)
lowcase_key = NULL;
if (scf->header_params) {
ignored = ngx_palloc(r->pool, scf->header_params * sizeof(void *));
n = 0;
part = &r->headers_in.headers.part;
while (part) {
n += part->nelts;
part = part->next;
}
ignored = ngx_palloc(r->pool, n * sizeof(void *));
if (ignored == NULL) {
return NGX_ERROR;
}

View File

@ -589,7 +589,15 @@ ngx_http_uwsgi_create_request(ngx_http_request_t *r)
lowcase_key = NULL;
if (uwcf->header_params) {
ignored = ngx_palloc(r->pool, uwcf->header_params * sizeof(void *));
n = 0;
part = &r->headers_in.headers.part;
while (part) {
n += part->nelts;
part = part->next;
}
ignored = ngx_palloc(r->pool, n * sizeof(void *));
if (ignored == NULL) {
return NGX_ERROR;
}