Upstream keepalive: detect duplicate "keepalive" directive.

A failure to detect duplicate "keepalive" directive resulted in
stack exhaustion.
This commit is contained in:
Ruslan Ermilov 2012-12-26 14:46:06 +00:00
parent 0a668faba4
commit f8a6de481c

View File

@ -502,6 +502,10 @@ ngx_http_upstream_keepalive(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
kcf = ngx_http_conf_upstream_srv_conf(uscf,
ngx_http_upstream_keepalive_module);
if (kcf->original_init_upstream) {
return "is duplicate";
}
kcf->original_init_upstream = uscf->peer.init_upstream
? uscf->peer.init_upstream
: ngx_http_upstream_init_round_robin;