mirror of
https://github.com/nginx/nginx.git
synced 2025-06-07 17:52:38 +08:00
Ensure "listen" exists in a mail or stream server (ticket #1049).
This commit is contained in:
parent
eecc68ce17
commit
dabbf30377
@ -124,6 +124,8 @@ typedef struct {
|
|||||||
|
|
||||||
/* server ctx */
|
/* server ctx */
|
||||||
ngx_mail_conf_ctx_t *ctx;
|
ngx_mail_conf_ctx_t *ctx;
|
||||||
|
|
||||||
|
ngx_uint_t listen; /* unsigned listen:1; */
|
||||||
} ngx_mail_core_srv_conf_t;
|
} ngx_mail_core_srv_conf_t;
|
||||||
|
|
||||||
|
|
||||||
|
@ -279,6 +279,13 @@ ngx_mail_core_server(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
|||||||
|
|
||||||
*cf = pcf;
|
*cf = pcf;
|
||||||
|
|
||||||
|
if (rv == NGX_CONF_OK && !cscf->listen) {
|
||||||
|
ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
|
||||||
|
"no \"listen\" is defined for server in %s:%ui",
|
||||||
|
cscf->file_name, cscf->line);
|
||||||
|
return NGX_CONF_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -295,6 +302,8 @@ ngx_mail_core_listen(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
|||||||
ngx_mail_module_t *module;
|
ngx_mail_module_t *module;
|
||||||
ngx_mail_core_main_conf_t *cmcf;
|
ngx_mail_core_main_conf_t *cmcf;
|
||||||
|
|
||||||
|
cscf->listen = 1;
|
||||||
|
|
||||||
value = cf->args->elts;
|
value = cf->args->elts;
|
||||||
|
|
||||||
ngx_memzero(&u, sizeof(ngx_url_t));
|
ngx_memzero(&u, sizeof(ngx_url_t));
|
||||||
|
@ -144,6 +144,8 @@ typedef struct {
|
|||||||
|
|
||||||
ngx_msec_t resolver_timeout;
|
ngx_msec_t resolver_timeout;
|
||||||
ngx_resolver_t *resolver;
|
ngx_resolver_t *resolver;
|
||||||
|
|
||||||
|
ngx_uint_t listen; /* unsigned listen:1; */
|
||||||
} ngx_stream_core_srv_conf_t;
|
} ngx_stream_core_srv_conf_t;
|
||||||
|
|
||||||
|
|
||||||
|
@ -325,6 +325,13 @@ ngx_stream_core_server(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
|||||||
|
|
||||||
*cf = pcf;
|
*cf = pcf;
|
||||||
|
|
||||||
|
if (rv == NGX_CONF_OK && !cscf->listen) {
|
||||||
|
ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
|
||||||
|
"no \"listen\" is defined for server in %s:%ui",
|
||||||
|
cscf->file_name, cscf->line);
|
||||||
|
return NGX_CONF_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -332,12 +339,16 @@ ngx_stream_core_server(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
|||||||
static char *
|
static char *
|
||||||
ngx_stream_core_listen(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
ngx_stream_core_listen(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
||||||
{
|
{
|
||||||
|
ngx_stream_core_srv_conf_t *cscf = conf;
|
||||||
|
|
||||||
ngx_str_t *value;
|
ngx_str_t *value;
|
||||||
ngx_url_t u;
|
ngx_url_t u;
|
||||||
ngx_uint_t i, backlog;
|
ngx_uint_t i, backlog;
|
||||||
ngx_stream_listen_t *ls, *als;
|
ngx_stream_listen_t *ls, *als;
|
||||||
ngx_stream_core_main_conf_t *cmcf;
|
ngx_stream_core_main_conf_t *cmcf;
|
||||||
|
|
||||||
|
cscf->listen = 1;
|
||||||
|
|
||||||
value = cf->args->elts;
|
value = cf->args->elts;
|
||||||
|
|
||||||
ngx_memzero(&u, sizeof(ngx_url_t));
|
ngx_memzero(&u, sizeof(ngx_url_t));
|
||||||
|
Loading…
Reference in New Issue
Block a user