[Dovecot] Non-atomic Flags in APPEND

Bill Cole dovecot-20061108 at billmail.scconsult.com
Sun Apr 26 20:48:25 EEST 2009


Richard Laager wrote, On 4/26/09 2:12 AM:
> I'm using Evolution and Dovecot (on the localhost) and receiving these
> errors trying to move a message into the IMAP folder:
>
> C00095 APPEND INBOX (\Answered \Seen NotJunk "Junk" "NotJunk" "receipt-handled") {1022}
> C00095 BAD Error in IMAP command APPEND: Flags list contains non-atoms.
>
> Is this a Dovecot or Evolution bug?

Looks like Evolution.

RFC3501 says that APPEND optionally takes a "flag parenthesized list" which 
is a space-delimited list of tokens inside () which can include standard and 
extension flags which start with '\' and keywords which are defined as 
"atom" types. The relevant ABNF there (in top-down order) is:


atom            = 1*ATOM-CHAR
   ATOM-CHAR       = <any CHAR except atom-specials>
     atom-specials   = "(" / ")" / "{" / SP / CTL / list-wildcards /
                       quoted-specials / resp-specials
       list-wildcards  = "%" / "*"
       quoted-specials = DQUOTE / "\"
       resp-specials   = "]"

('DQUOTE' is ABNF for the double-quote character: ascii 0x22)

This means that an APPEND command *CANNOT* put "" around flag keywords, as 
does the one you quote. If Evolution is doing that, it is wrong.

The fact that there is both an unquoted NotJunk and a quoted NotJunk in that 
list implies that there's something strange going on in what Evolution 
thinks it is doing. What is in the relevant dovecot-keywords file?






More information about the dovecot mailing list