comparison src/imap/ngx_imap_auth_http_module.c @ 809:da9c1521319d

AUTH PLAIN LOGIN CRAM-MD5
author Igor Sysoev <igor@sysoev.ru>
date Tue, 24 Oct 2006 18:38:31 +0000
parents 8ee450f30c25
children 1673f197bc62
comparison
equal deleted inserted replaced
808:eef6d9cc45da 809:da9c1521319d
131 }; 131 };
132 132
133 133
134 static char *ngx_imap_auth_http_protocol[] = { "pop3", "imap" }; 134 static char *ngx_imap_auth_http_protocol[] = { "pop3", "imap" };
135 static ngx_str_t ngx_imap_auth_http_method[] = { 135 static ngx_str_t ngx_imap_auth_http_method[] = {
136 ngx_string("plain"), ngx_string("apop") 136 ngx_string("plain"),
137 ngx_string("apop"),
138 ngx_string("cram-md5")
137 }; 139 };
138 140
139 141
140 void 142 void
141 ngx_imap_auth_http_init(ngx_imap_session_t *s) 143 ngx_imap_auth_http_init(ngx_imap_session_t *s)
1076 1078
1077 b->last = ngx_cpymem(b->last, "Auth-Pass: ", sizeof("Auth-Pass: ") - 1); 1079 b->last = ngx_cpymem(b->last, "Auth-Pass: ", sizeof("Auth-Pass: ") - 1);
1078 b->last = ngx_copy(b->last, passwd.data, passwd.len); 1080 b->last = ngx_copy(b->last, passwd.data, passwd.len);
1079 *b->last++ = CR; *b->last++ = LF; 1081 *b->last++ = CR; *b->last++ = LF;
1080 1082
1081 if (s->salt.len) { 1083 if (s->auth_method != NGX_IMAP_AUTH_PLAIN && s->salt.len) {
1082 b->last = ngx_cpymem(b->last, "Auth-Salt: ", sizeof("Auth-Salt: ") - 1); 1084 b->last = ngx_cpymem(b->last, "Auth-Salt: ", sizeof("Auth-Salt: ") - 1);
1083 b->last = ngx_copy(b->last, s->salt.data, s->salt.len); 1085 b->last = ngx_copy(b->last, s->salt.data, s->salt.len);
1084 1086
1085 s->passwd.data = NULL; 1087 s->passwd.data = NULL;
1086 } 1088 }