[Dovecot] Problems with subfolders in Thunderbird
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. If I create a folder which will contain only folders, it is listed in thunderbird in light-grey italics. Subsequently I can create message folders within this folder.
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 (nothing is created anywhere on the server filesystem).
Is this a known problem ?
I do not want to use the setting which allows you to create folders which may contain both messages and folders.
Thanks
Ian
-- 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
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.
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@cardgate.net
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@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
On Fri, 2006-05-19 at 09:44 +0100, Ian Thurlbeck wrote:
So dovecot's and Thunderbirds idea of what a directory separator is differs somewhat.
That's your main problem. If you used an existing account and just switched the server to Dovecot, it's possible that Thunderbird just cached the old separator and tried to use it. Alternatively it's a bug in Thunderbird.
In either case, you can fix this by just changing Dovecot's separator to '/' using namespaces, see http://wiki.dovecot.org/Namespaces
participants (3)
-
Curtis Maloney
-
Ian Thurlbeck
-
Timo Sirainen