aboutsummaryrefslogtreecommitdiff
path: root/src/mail/ngx_mail_smtp_handler.c
diff options
context:
space:
mode:
authorMaxim Dounin <mdounin@mdounin.ru>2014-08-05 12:22:07 +0400
committerMaxim Dounin <mdounin@mdounin.ru>2014-08-05 12:22:07 +0400
commit44f45a54667275878236991afab0472c209dac78 (patch)
tree237f7aed0c581d69770873e9e89a1a8557846161 /src/mail/ngx_mail_smtp_handler.c
parent1fe0f6a9b9596a9bf9cf064d405f3568de8c2ed7 (diff)
downloadnginx-44f45a54667275878236991afab0472c209dac78.tar.gz
nginx-44f45a54667275878236991afab0472c209dac78.zip
Mail: discard pipelined commands after SMTP STARTTLS.
The bug had appeared in nginx 1.5.6 (04e43d03e153). Reported by Chris Boulton.
Diffstat (limited to 'src/mail/ngx_mail_smtp_handler.c')
-rw-r--r--src/mail/ngx_mail_smtp_handler.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mail/ngx_mail_smtp_handler.c b/src/mail/ngx_mail_smtp_handler.c
index 665f5ef19..46d703e2c 100644
--- a/src/mail/ngx_mail_smtp_handler.c
+++ b/src/mail/ngx_mail_smtp_handler.c
@@ -777,6 +777,9 @@ ngx_mail_smtp_starttls(ngx_mail_session_t *s, ngx_connection_t *c)
ngx_str_null(&s->smtp_from);
ngx_str_null(&s->smtp_to);
+ s->buffer->pos = s->buffer->start;
+ s->buffer->last = s->buffer->start;
+
c->read->handler = ngx_mail_starttls_handler;
return NGX_OK;
}