diff options
author | Roman Arutyunyan <arut@nginx.com> | 2015-04-24 10:54:06 +0300 |
---|---|---|
committer | Roman Arutyunyan <arut@nginx.com> | 2015-04-24 10:54:06 +0300 |
commit | d61f21c5e8735da57fb1e1c1a91103e71f5c6207 (patch) | |
tree | fc7c8c03b5dd11f10b2cf51e43e93e9f6e0ea9c5 /src/http | |
parent | 3180f84b609c0ef1117a25f1752556b57d277ffd (diff) |
Merge proxy_protocol setting of listen directives.
It's now enough to specify proxy_protocol option in one listen directive to
enable it in all servers listening on the same address/port. Previously,
the setting from the first directive was always used.
Diffstat (limited to 'src/http')
-rw-r--r-- | src/http/ngx_http.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c index 72981c17b..924c4b548 100644 --- a/src/http/ngx_http.c +++ b/src/http/ngx_http.c @@ -1220,7 +1220,7 @@ ngx_http_add_addresses(ngx_conf_t *cf, ngx_http_core_srv_conf_t *cscf, { u_char *p; size_t len, off; - ngx_uint_t i, default_server; + ngx_uint_t i, default_server, proxy_protocol; struct sockaddr *sa; ngx_http_conf_addr_t *addr; #if (NGX_HAVE_UNIX_DOMAIN) @@ -1281,6 +1281,8 @@ ngx_http_add_addresses(ngx_conf_t *cf, ngx_http_core_srv_conf_t *cscf, /* preserve default_server bit during listen options overwriting */ default_server = addr[i].opt.default_server; + proxy_protocol = lsopt->proxy_protocol || addr[i].opt.proxy_protocol; + #if (NGX_HTTP_SSL) ssl = lsopt->ssl || addr[i].opt.ssl; #endif @@ -1314,6 +1316,7 @@ ngx_http_add_addresses(ngx_conf_t *cf, ngx_http_core_srv_conf_t *cscf, } addr[i].opt.default_server = default_server; + addr[i].opt.proxy_protocol = proxy_protocol; #if (NGX_HTTP_SSL) addr[i].opt.ssl = ssl; #endif |