Mercurial > hg > nginx
changeset 1300:ff707b0bf8cf stable-0.5
r1287 merge:
fix segfault when CRAM-MD5 is not enabled but client tries it
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 13 Jul 2007 10:44:36 +0000 |
parents | 65cebdc99554 |
children | d358cb12a787 |
files | src/mail/ngx_mail_handler.c |
diffstat | 1 files changed, 11 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/mail/ngx_mail_handler.c Fri Jul 13 10:43:35 2007 +0000 +++ b/src/mail/ngx_mail_handler.c Fri Jul 13 10:44:36 2007 +0000 @@ -708,7 +708,10 @@ (u_char *) "CRAM-MD5", 8) == 0) { - if (s->args.nelts != 1) { + if (!(cscf->pop3_auth_methods + & NGX_MAIL_AUTH_CRAM_MD5_ENABLED) + || s->args.nelts != 1) + { rc = NGX_MAIL_PARSE_INVALID_COMMAND; break; } @@ -1368,7 +1371,13 @@ (u_char *) "CRAM-MD5", 8) == 0) { - if (s->args.nelts != 1) { + cscf = ngx_mail_get_module_srv_conf(s, + ngx_mail_core_module); + + if (!(cscf->smtp_auth_methods + & NGX_MAIL_AUTH_CRAM_MD5_ENABLED) + || s->args.nelts != 1) + { rc = NGX_MAIL_PARSE_INVALID_COMMAND; break; }