Mercurial > hg > nginx-mail
diff src/mail/ngx_mail_smtp_handler.c @ 468:2580fe1c5a9a PATCH_NGINX_MAIL_0_6
Mail: support for smtp auth login with username.
According to "[MS-XLOGIN]: SMTP Protocol AUTH LOGIN Extension Specification"
(http://msdn.microsoft.com/en-us/library/cc433484.aspx) there is special mode
called "AUTH LOGIN with User Name". And it seems to be used by some Microsoft
software seen in wild.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Sun, 11 Jan 2009 23:19:26 +0300 |
parents | d67e93e97b4a |
children | a28a95b7a86d |
line wrap: on
line diff
--- a/src/mail/ngx_mail_smtp_handler.c +++ b/src/mail/ngx_mail_smtp_handler.c @@ -446,7 +446,7 @@ ngx_mail_smtp_auth_state(ngx_event_t *re break; case ngx_smtp_auth_login_username: - rc = ngx_mail_auth_login_username(s, c); + rc = ngx_mail_auth_login_username(s, c, 0); s->out.len = sizeof(smtp_password) - 1; s->out.data = smtp_password; @@ -602,6 +602,14 @@ ngx_mail_smtp_auth(ngx_mail_session_t *s return NGX_OK; + case NGX_MAIL_AUTH_LOGIN_USERNAME: + + s->out.len = sizeof(smtp_password) - 1; + s->out.data = smtp_password; + s->mail_state = ngx_smtp_auth_login_password; + + return ngx_mail_auth_login_username(s, c, 1); + case NGX_MAIL_AUTH_PLAIN: s->out.len = sizeof(smtp_next) - 1;