Hello! On Mon, May 13, 2024 at 03:43:18PM +1000, Robert Mueller wrote:
> # HG changeset patch > # User Rob Mueller <[email protected]> > Reset imap tag to empty after authentication attempt > > We need to reset the imap tag to empty after an authentication attempt > completes, otherwise if the next line parsed is incomplete with no tag > (e.g. empty line) then we use the "tag" from the previous buffer which > is now definitely wrong and has been partially overwritten with the most > recently read data (e.g. CRLF). > > An example before this patch: > > S: * OK IMAP4 ready > C: foobar login a b > S: foobar NO Incorrect username or password. > C: > S: > S: obar BAD invalid command > > Then with this patch: > > S: * OK IMAP4 ready > C: foobar login a b > S: foobar NO Incorrect username or password. > C: > S: * BAD invalid command > --- > src/mail/ngx_mail_auth_http_module.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/src/mail/ngx_mail_auth_http_module.c > b/src/mail/ngx_mail_auth_http_module.c > index 543d1c4eb..55280d66c 100644 > --- a/src/mail/ngx_mail_auth_http_module.c > +++ b/src/mail/ngx_mail_auth_http_module.c > @@ -981,6 +981,7 @@ ngx_mail_auth_sleep_handler(ngx_event_t *rev) > > s->mail_state = 0; > s->auth_method = NGX_MAIL_AUTH_PLAIN; > + s->tag.len = 0; > > c->log->action = "in auth state"; > Looks good to me. Committed with minimal fixes to commit log, thanks. -- Maxim Dounin http://mdounin.ru/ -- nginx-devel mailing list [email protected] https://freenginx.org/mailman/listinfo/nginx-devel
