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
}

Attachment: ncat_imap_tcp_correct_tag
Description: Binary data

Attachment: custom_imap_tcp_empty_tag
Description: Binary data

Reply via email to