mail_core: don't let the well-known port in the "listen" directive to
override the already set "protocol".
This commit is contained in:
parent
0e93cf6b69
commit
3062edc931
1 changed files with 17 additions and 15 deletions
|
@ -378,21 +378,23 @@ ngx_mail_core_listen(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
|||
ls->ipv6only = 1;
|
||||
#endif
|
||||
|
||||
for (m = 0; ngx_modules[m]; m++) {
|
||||
if (ngx_modules[m]->type != NGX_MAIL_MODULE) {
|
||||
continue;
|
||||
}
|
||||
|
||||
module = ngx_modules[m]->ctx;
|
||||
|
||||
if (module->protocol == NULL) {
|
||||
continue;
|
||||
}
|
||||
|
||||
for (i = 0; module->protocol->port[i]; i++) {
|
||||
if (module->protocol->port[i] == u.port) {
|
||||
cscf->protocol = module->protocol;
|
||||
break;
|
||||
if (cscf->protocol == NULL) {
|
||||
for (m = 0; ngx_modules[m]; m++) {
|
||||
if (ngx_modules[m]->type != NGX_MAIL_MODULE) {
|
||||
continue;
|
||||
}
|
||||
|
||||
module = ngx_modules[m]->ctx;
|
||||
|
||||
if (module->protocol == NULL) {
|
||||
continue;
|
||||
}
|
||||
|
||||
for (i = 0; module->protocol->port[i]; i++) {
|
||||
if (module->protocol->port[i] == u.port) {
|
||||
cscf->protocol = module->protocol;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue