On 26.4.2011, at 23.48, Binarus wrote:

> But whenever a user tries to delete a folder from the public namespace,
> dovecot gives the following error: "Renaming not supported across
> non-private namespaces".
..
> Furthermore, I haven't completely understood the reason for the
> different behaviour of folders in the public namespace and a single
> message therein.


Talking only about ACLs I guess it would be ok to allow renaming from public 
namespace to a private namespace. Renaming one of your own private mailboxes to 
public namespace is a bit trickier, because the default ACL is "no 
permissions". So when renaming, a new explicit ACL should be added to the user 
who did the renaming, because otherwise user could no longer access that 
mailbox at all. Still doable I guess.

Although it is possible to give user permission to delete foo/bar but not give 
permission to create children to foo. Then if user renames foo/bar to 
Trash/foo/bar, it's not possible to rename it back. Probably not a real problem.

Renaming from/to shared namespace needs to update the shared users acl dict.

Quota also needs to be updated. I'm not sure if lazy-expunge has any trouble 
with this. Multi-dbox backend can't do a fast rename at all, because it would 
have to physically copy all of the messages from one mdbox storage to another 
mdbox storage. Maybe there are other problems I can't remember now.

So looks like it should be possible to do all this, with the exception of 
adding an inefficiency to mdbox, but it's some work..

Reply via email to