On Wed, 2004-07-21 at 18:19, Tim Southerwood wrote:
namespace private { separator = / inbox = yes prefix = hidden = no location = mbox:.email } namespace private { separator = / prefix = hidden = no location = mbox:IMAP/ }
Well, this seems to work because the later namespace declaration overrides the first one with same prefix, but that wasn't really how I thought the inbox was to be used. Rather set the full location for all namespaces, eg.:
location = mbox:IMAP/:INBOX=.email:INDEX=/var/cache/...
and mark one of them with inbox = yes. Or in case there's no inbox=yes, it uses the one with empty prefix.
if full_filesystem_access = yes let anything go. else make sure that final translated mail path is identical OR a subpath of the default_mail_env mbox folder path. (INBOX is a special case and can be matched as well)
This is a suggestion - what do you think? I'd have a go myself but I don't yet feel competant with the dovecot code.
Now that I looked at the code, I think it needs some larger fixing. Namespace prefix should be removed in imap-specific code and lib-storage code shouldn't need to know anything about namespaces. Except subscription code is handled by lib-storage and it needs to know the namespace prefixes. Hmm. Have to think a while how the API should actually work. I guess the subscription handling needs to be more or less separated.