Hello, I'm currently writing my own IMAP client and testing it against Dovecot, and when doing PLAIN AUTH Dovecot sends the "OK Logged in" with an empty tag at the start. I tried reproducing the conversation with netcat, but Dovecot sends a correctly tagged OK at the end of the AUTH so I assume it's timing related.
I've attached pcap dumps of the TCP conversation in both situations as well as the output of dovecot -n. Side Note: Why does Dovecot send the updated capabilities before OK'ing the authentication? Seems strange to me as the client can't assume that the authentication proceeded successfully until it actually receives the OK so it has to assume that those capabilities are pre login. -- Simon Thelen
# 20150721 (32d72cb26f9e+): /home/dovecot/etc/dovecot/dovecot.conf # OS: Linux 4.1.3-gentoo x86_64 Gentoo Base System release 2.2 auth_debug = yes auth_verbose = yes base_dir = /home/dovecot/var/run/dovecot/ mail_debug = yes mail_location = maildir:~/vmail namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { args = scheme=CRYPT username_format=%u /home/dovecot/etc/dovecot/users driver = passwd-file } protocols = imap ssl_cert = </home/dovecot/etc/ssl/certs/dovecot.pem ssl_key = </home/dovecot/etc/ssl/private/dovecot.pem userdb { args = username_format=%u /home/dovecot/etc/dovecot/users driver = passwd-file }
ncat_imap_tcp_correct_tag
Description: Binary data
custom_imap_tcp_empty_tag
Description: Binary data