[Dovecot] Problems with subfolders in Thunderbird
Ian Thurlbeck
ian at stams.strath.ac.uk
Fri May 19 11:44:27 EEST 2006
Curtis Maloney wrote:
> Ian Thurlbeck wrote:
>
>>
>> Dear All
>>
>> Server:
>> dovecot-1.0.beta8 (compiled from source)
>> centos 4.3
>>
>> Client:
>> thunderbird 1.0.8 on Fedora Core 4
>> on port 993
>>
>> Using maildir
>>
>> Normally (with the current UW-IMAP) I can create a folder
>> which may contain only messages or only folders.
>
>
> This is a limitation normally inflicted by using mbox. It is not
> suffered by Maildir, which may explain why this "issue" is occurring.
>
Hi Curtis
thanks for replying.
The desire for maintaining our current setup is dictating what I
would like. Currently all our Thunderbird clients have the
"Server supports folders that contain sub-folders and messages"
option UNCHECKED. To migrate to dovecot I want to preserve
this setting. I would want to create, say, a top-level folder called
"top", with subfolders "sub1" and "sub2". Users can store messages
in "sub1", "sub2", but not in "top".
If I try to create a top-level folder "top" which "contains only
folders", it fails silently. ngrep says:
10 create "top/"..
#
10 NO Invalid mailbox name: top/..
So Thunderbird has appended a "/"
I added an i_info() call to cmd-create.c and it says:
if (len == 0 ||
mailbox[len-1] != mail_storage_get_hierarchy_sep(storage)) {
directory = FALSE;
i_info("Separator=%c", mail_storage_get_hierarchy_sep(storage));
}
May 19 08:47:23 XXXXX dovecot: IMAP(it): Separator=.
So dovecot's and Thunderbirds idea of what a directory separator is differs
somewhat. The "else" part of the above code strips off this
separator before passing it to client_verify_mailbox_name(), but
this fails of course, since the code path follows the "if" clause.
The code is a bit tricky to follow with all these structs with pointers
to functions, so I'm struggling finding the bit where it sets the default
separator. I noticed that the config option "tb-extra-mailbox-sep"
is used to handle the trailing "/" in src/imap/cmd-delete.c and
src/imap/cmd-subscribe.c but not in src/imap/cmd-create.c ?
[ I would like to convert to maildirs - I have a lot of users with various
>200MB mailboxes which clog up my backups and rsyncs. Rewriting these
mailboxes hammers the servers. ]
Thanks again
Ian
PS Yes, I was using "ls -a"!
>> When doing the same thing using dovecot as the server, the
>> same options are available, but any attempt to create a folder
>> containing only folders is silently ignored and nothing
>> happens
>
>
> Thunderbird will have no idea what storage format the IMAP server is
> using, so it's offering you the choice just in case. I, personally,
> have Thunderbird happily working with folders containing both messages
> and folders.
>
> > (nothing is created anywhere on the server filesystem).
>
> You are looking for hidden files, right? Maildir folders all being with
> a . and so will be hidden normally. Just making sure.
>
>> Is this a known problem ?
>
>
> It's really a side-effect of _removing_ a limitation.
>
>> I do not want to use the setting which allows you to create folders
>> which may contain both messages and folders.
>
>
> I don't understand what your issue is here. All Maildir folders may
> contain messages AND folders. If you want to force people to not be
> able to do this, you may want to consider switching to mbox instead of
> Maildir.
>
> Which storage format is better is a holy war we don't want to get into
> here. They both have their advantages in given situations. Most people
> consider the "messages or folders, but not both" property of mbox a
> "limitation", not a "feature".
>
> --
> Curtis Maloney
> cmaloney at cardgate.net
--
Ian Thurlbeck http://www.stams.strath.ac.uk/
Statistics and Modelling Science, University of Strathclyde
Livingstone Tower, 26 Richmond Street, Glasgow, UK, G1 1XH
Tel: +44 (0)141 548 3667 Fax: +44 (0)141 552 2079
More information about the dovecot
mailing list