aboutsummaryrefslogtreecommitdiff
path: root/src/stream/ngx_stream_core_module.c
diff options
context:
space:
mode:
authorMaxim Dounin <mdounin@mdounin.ru>2018-04-24 15:29:01 +0300
committerMaxim Dounin <mdounin@mdounin.ru>2018-04-24 15:29:01 +0300
commit76be1ea9de13c5e8bb0d9523c6a2ad4009a5d7cf (patch)
treeefc4b871b998e7e04d5ab4a11a7df9e89a3e1dde /src/stream/ngx_stream_core_module.c
parent5d3a854ebd4f59854ade798b94070ff1ee3eddcf (diff)
downloadnginx-76be1ea9de13c5e8bb0d9523c6a2ad4009a5d7cf.tar.gz
nginx-76be1ea9de13c5e8bb0d9523c6a2ad4009a5d7cf.zip
SSL: detect "listen ... ssl" without certificates (ticket #178).
In mail and stream modules, no certificate provided is a fatal condition, much like with the "ssl" and "starttls" directives. In http, "listen ... ssl" can be used in a non-default server without certificates as long as there is a certificate in the default one, so missing certificate is only fatal for default servers.
Diffstat (limited to 'src/stream/ngx_stream_core_module.c')
-rw-r--r--src/stream/ngx_stream_core_module.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/stream/ngx_stream_core_module.c b/src/stream/ngx_stream_core_module.c
index 272708d62..96e7c9ac8 100644
--- a/src/stream/ngx_stream_core_module.c
+++ b/src/stream/ngx_stream_core_module.c
@@ -734,7 +734,17 @@ ngx_stream_core_listen(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
if (ngx_strcmp(value[i].data, "ssl") == 0) {
#if (NGX_STREAM_SSL)
+ ngx_stream_ssl_conf_t *sslcf;
+
+ sslcf = ngx_stream_conf_get_module_srv_conf(cf,
+ ngx_stream_ssl_module);
+
+ sslcf->listen = 1;
+ sslcf->file = cf->conf_file->file.name.data;
+ sslcf->line = cf->conf_file->line;
+
ls->ssl = 1;
+
continue;
#else
ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,