mirror of
https://github.com/nginx/nginx.git
synced 2025-01-19 01:42:58 +08:00
Upstream: hide_headers_hash handling at http level.
When headers to hide are set at the "http" level and not redefined in a server block, we now preserve compiled headers hash into the "http" section configuration to inherit this hash to all servers.
This commit is contained in:
parent
f5dcb06f28
commit
c541cf70cf
@ -6106,7 +6106,23 @@ ngx_http_upstream_hide_headers_hash(ngx_conf_t *cf,
|
||||
hash->pool = cf->pool;
|
||||
hash->temp_pool = NULL;
|
||||
|
||||
return ngx_hash_init(hash, hide_headers.elts, hide_headers.nelts);
|
||||
if (ngx_hash_init(hash, hide_headers.elts, hide_headers.nelts) != NGX_OK) {
|
||||
return NGX_ERROR;
|
||||
}
|
||||
|
||||
/*
|
||||
* special handling to preserve conf->hide_headers_hash
|
||||
* in the "http" section to inherit it to all servers
|
||||
*/
|
||||
|
||||
if (prev->hide_headers_hash.buckets == NULL
|
||||
&& conf->hide_headers == prev->hide_headers
|
||||
&& conf->pass_headers == prev->pass_headers)
|
||||
{
|
||||
prev->hide_headers_hash = conf->hide_headers_hash;
|
||||
}
|
||||
|
||||
return NGX_OK;
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user