[Dovecot] CATENATE mis-reads literal after bad URL

Mike Abbott michael.abbott at apple.com
Fri May 3 04:00:58 EEST 2013


Dovecot-2.2.1 plus Timo's recent CATENATE and URLAUTH fixes mishandles literals after bad URLs.  (As before remember that the "foobar" text below is really "foobarCRLF" hence the length of 8.  Also, last time some MTA discarded an important single leading space character in the snippet I quoted so this time I'm prefixing all the lines to avoid that.  In case it's lost again, there's a space before the word "url" below.)

| b append inbox catenate (text {8}
| + OK
| foobar
|  url /a-bad-url text {8} 
| b NO [BADURL /a-bad-url] Invalid messagepart IMAP URL.
| c noop
| d noop
| d OK NOOP completed.
| e logout
| * BYE Logging out
| e OK Logout completed.

Note that the command with tag "c" is lost.  I think it shouldn't be, because the NO was reported to the client without sending a continuation (+ OK) so the client knows not to send the literal.  Plus it appears only one line is discarded regardless of the size of the literal.


More information about the dovecot mailing list