changeset 6193:78c06e5e1d76

Disabled duplicate http, mail, and stream blocks. Such configurations have very limited use, introduce various problems and are not officially supported.
author Vladimir Homutov <vl@nginx.com>
date Tue, 16 Jun 2015 23:28:38 +0300
parents 7863b167dbf9
children acba1656c474
files src/http/ngx_http.c src/mail/ngx_mail.c src/stream/ngx_stream.c
diffstat 3 files changed, 12 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/http/ngx_http.c
+++ b/src/http/ngx_http.c
@@ -128,6 +128,10 @@ ngx_http_block(ngx_conf_t *cf, ngx_comma
     ngx_http_core_srv_conf_t   **cscfp;
     ngx_http_core_main_conf_t   *cmcf;
 
+    if (*(ngx_http_conf_ctx_t **) conf) {
+        return "is duplicate";
+    }
+
     /* the main http context */
 
     ctx = ngx_pcalloc(cf->pool, sizeof(ngx_http_conf_ctx_t));
--- a/src/mail/ngx_mail.c
+++ b/src/mail/ngx_mail.c
@@ -76,6 +76,10 @@ ngx_mail_block(ngx_conf_t *cf, ngx_comma
     ngx_mail_core_srv_conf_t   **cscfp;
     ngx_mail_core_main_conf_t   *cmcf;
 
+    if (*(ngx_mail_conf_ctx_t **) conf) {
+        return "is duplicate";
+    }
+
     /* the main mail context */
 
     ctx = ngx_pcalloc(cf->pool, sizeof(ngx_mail_conf_ctx_t));
--- a/src/stream/ngx_stream.c
+++ b/src/stream/ngx_stream.c
@@ -76,6 +76,10 @@ ngx_stream_block(ngx_conf_t *cf, ngx_com
     ngx_stream_core_srv_conf_t   **cscfp;
     ngx_stream_core_main_conf_t   *cmcf;
 
+    if (*(ngx_stream_conf_ctx_t **) conf) {
+        return "is duplicate";
+    }
+
     /* the main stream context */
 
     ctx = ngx_pcalloc(cf->pool, sizeof(ngx_stream_conf_ctx_t));