[Dovecot] Problem listing SPECIAL-USE flags

Patrick Ben Koetter p at state-of-mind.de
Wed Dec 21 21:42:48 EET 2011


* Michael M Slusarz <slusarz at curecanti.org>:
> Quoting Patrick Ben Koetter <p at state-of-mind.de>:
> >we want to implement SPECIAL-USE in Thunderbird (TB), but we've run into
> >problems. I believe you could help change that.
> >
> >Here's the problem:
> >
> >By default TB only lists subscribed (LSUB) folders when it accesses an IMAP
> >server. However when I do a LSUB on recent Dovecot 2.1 code from mercurial I
> >don't get to see the SPECIAL-USE flags. Therefore TB fails to identify which
> >folders it should use and map to until someone tells it to list all folders
> >(LIST) manually.
> >
> >Central part of the SPECIAL-USE idea was/is to require as little user
> >interaction as possible to automatically setup a MUA to do the right thing.
> >
> >Speculating that probably most MUAs will do a LSUB by default and never will
> >get to see SPECIAL-USE flags I think it is easier to have the server-side
> >promote the flags.
> 
> Except you never, never, never, never, never can rely on LSUB for
> mailbox attributes.  It says so right in RFC 3501 [6.3.9]:
> 
>       The returned untagged LSUB response MAY contain different mailbox
>       flags from a LIST untagged response.  If this should happen, the
>       flags in the untagged LIST are considered more authoritative.
> 
> See also RFC 5258 [3.1], which discusses the difference between the
> base RFC 3501 LSUB command and the LIST-EXTENDED SUBSCRIBED option:
> 
>       This option is
>       intended to supplement the LSUB command.  Of particular note are
>       the mailbox attributes as returned by this option, compared with
>       what is returned by LSUB.  With the latter, the attributes
>       returned may not reflect the actual attribute status on the
>       mailbox name, and the \NoSelect attribute has a second special
>       meaning (it indicates that this mailbox is not, itself,
>       subscribed, but that it has descendant mailboxes that are).  With
>       the SUBSCRIBED selection option described here, the attributes are
>       accurate and complete, and have no special meanings.  "LSUB" and
>       "LIST (SUBSCRIBED)" are, thus, not the same thing, and some
>       servers must do significant extra work to respond to "LIST
>       (SUBSCRIBED)".  Because of this, clients SHOULD continue to use
>       "LSUB" unless they specifically want the additional information
>       offered by "LIST (SUBSCRIBED)".

Thanks for the clarification. I did some reading to get a better
understanding. We'll probably stick with this and may go for LIST if the
server does not announce LIST-EXTENTED:

t2 LIST "" "%" RETURN (SPECIAL-USE)
* LIST (\Sent) "." "AltSent"
* LIST () "." "Archives"
* LIST (\Archive) "." "AltArchive"
* LIST (\Junk) "." "AltJunk"
* LIST () "." "Junk"
* LIST (\Trash) "." "AltTrash"
* LIST (\Drafts) "." "AltDrafts"
* LIST () "." "Trash"
* LIST () "." "INBOX"
t2 OK List completed.

p at rick

-- 
state of mind ()

http://www.state-of-mind.de

Franziskanerstraße 15      Telefon +49 89 3090 4664
81669 München              Telefax +49 89 3090 4666

Amtsgericht München        Partnerschaftsregister PR 563




More information about the dovecot mailing list