[Dovecot] CATENATE allows empty messages

Michael M Slusarz slusarz at curecanti.org
Thu May 2 19:24:50 EEST 2013


Quoting Mike Abbott <michael.abbott at apple.com>:

> It's the inconsistency that bothers me.  Plain old APPEND doesn't  
> allow empty messages but CATENATE does?

I don't recall/see anything in RFC 3501 that prevents a zero-length message:

append          = "APPEND" SP mailbox [SP flag-list] [SP date-time] SP
                   literal

[...]

literal         = "{" number "}" CRLF *CHAR8
                     ; Number represents the number of CHAR8s

[...]

number          = 1*DIGIT
                     ; Unsigned 32-bit integer
                     ; (0 <= n < 4,294,967,296)

So this is legal under the ABNF:

APPEND mailboxname {0}CRLF[0 length *CHAR8]CRLF

Timo mentioned that MULTIAPPEND doesn't allow zero-length messages.   
But looks like that was done solely as a way to provide a mechanism to  
cancel a MULTIAPPEND rather than a statement that zero-length messages  
are not ever intended to be processed by any kind of APPEND action  
(i.e. a vanilla RFC 3501 non-MULTIAPPEND action).

michael



More information about the dovecot mailing list