Thanks, this helped. I added namespace virtual and removed the virtual references from inbox namespace and added list = yes so now I can see shared folder in the client. There's still nothing in there though. I followed Christian's advice, debug shows this very strange behaviour. doveadm acl debug -u user1 at domain1.com.au shared.user2 at domain2.com.au doveadm(user1 at domain1.com.au): Error: Mailbox 'com.au' in namespace 'shared.user2 at domain2.' doesn't exist in /var/mail/vhosts/domain2/user2/mail/.com.au There are no errors in the log. This looks like a bug. I was seeing this before I got the shared folder working when I saw dovecot had created these extra folders and added dovecot-acl-list file there. I suppose if I'd used the / separator, this would work fine, but there was nothing about this on the wiki so I didn't expect this. Hugh On 18/02/2016 6:03 PM, Steffen Kaiser wrote:> On Thu, 18 Feb 2016, Hugh Bragg wrote: > > > namespace { > > location = virtual:/var/mail/vhosts/%d/%n/virtual > > prefix = virtual. > > separator = . > > } > > namespace { > > list = children > > location > > > maildir:/var/mail/vhosts/%%d/%%n/mail:INDEX=/var/mail/vhosts/%d/%n/shared/%%u:CONTROL=/var/mail/vhosts/%d/%n/shared/%%u > > prefix = shared.%%u. > > separator = . > > subscriptions = yes > > type = shared > > } > > you have two namespaces with the same name, put some string before the > {'s. > > > namespace inbox { > > like here. > > ==> > Then check out the advices of Christian & Chris (telnet) as well > > -- Steffen Kaiser
On 2016-02-18 15:21, Hugh Bragg wrote:> Thanks, this helped. > I added namespace virtual and removed the virtual references from inbox > namespace and added list = yes so now I can see shared folder in the > client. > There's still nothing in there though. > > I followed Christian's advice, debug shows this very strange behaviour. > doveadm acl debug -u user1 at domain1.com.au shared.user2 at domain2.com.au > doveadm(user1 at domain1.com.au): Error: Mailbox 'com.au' in namespace > 'shared.user2 at domain2.' doesn't exist in > /var/mail/vhosts/domain2/user2/mail/.com.au > There are no errors in the log.You will probably run into problems with your unsernames containing "." and have the separator set to ".". Take a look at this (very) old thread from the mailinglist, that's the same problem http://www.dovecot.org/list/dovecot/2011-January/056135.html And as mentioned by Timo here http://www.dovecot.org/list/dovecot/2011-January/056149.html> In any case having '.' both in usernames and as hierarchy separator > just > isn't going to work.I switched from system users to virtual users with my last server migration and changed separator from "." to "/" just because of this. It could be that auth_username_translation can help. Look in 10-auth.conf for an explanation for that setting. I haven't tested it though.> This looks like a bug. I was seeing this before I got the shared folder > working when I saw dovecot had created these extra folders and added > dovecot-acl-list file there. > I suppose if I'd used the / separator, this would work fine, but there > was nothing about this on the wiki so I didn't expect this.You could also use "/" as separator for the shared namespace and the "." for the other namespaces. As it's not working anyway there should be no problems with your MUAs. -- Christian Kivalo
On 19/02/2016 2:14 AM, Christian Kivalo wrote:> On 2016-02-18 15:21, Hugh Bragg wrote: >> Thanks, this helped. >> I added namespace virtual and removed the virtual references from inbox >> namespace and added list = yes so now I can see shared folder in the >> client. >> There's still nothing in there though. >> >> I followed Christian's advice, debug shows this very strange behaviour. >> doveadm acl debug -u user1 at domain1.com.au shared.user2 at domain2.com.au >> doveadm(user1 at domain1.com.au): Error: Mailbox 'com.au' in namespace >> 'shared.user2 at domain2.' doesn't exist in >> /var/mail/vhosts/domain2/user2/mail/.com.au >> There are no errors in the log. > You will probably run into problems with your unsernames containing > "." and have the separator set to ".". > > Take a look at this (very) old thread from the mailinglist, that's the > same problem > http://www.dovecot.org/list/dovecot/2011-January/056135.html > > And as mentioned by Timo here > http://www.dovecot.org/list/dovecot/2011-January/056149.html >> In any case having '.' both in usernames and as hierarchy separator just >> isn't going to work. > > I switched from system users to virtual users with my last server > migration and changed separator from "." to "/" just because of this. > > It could be that auth_username_translation can help. Look in > 10-auth.conf for an explanation for that setting. I haven't tested it > though. > >> This looks like a bug. I was seeing this before I got the shared folder >> working when I saw dovecot had created these extra folders and added >> dovecot-acl-list file there. >> I suppose if I'd used the / separator, this would work fine, but there >> was nothing about this on the wiki so I didn't expect this. > > You could also use "/" as separator for the shared namespace and the > "." for the other namespaces. As it's not working anyway there should > be no problems with your MUAs. >That auth_username_translation looks dodgy. When I read those threads before, I though the problem was confined to usernames. Surely there should be some sort of documentation on this to prevent people wasting countless hours trying it. The wiki documentation recommends using . separator for Maildir++ because it's native imap. I still think this is a bug. For some reason virtual handles it with no problem, but shared falls in a heap. To me it looks like %% and % are interpreted differently. depending on the namespace type. Surely, maildir:/var/mail/vhosts/%%d/%%n/mail:INDEX=/var/mail/vhosts/%d/%n/shared/%%u is no harder to translate than virtual:/var/mail/vhosts/%d/%n/virtual should I file a bug report? I'm not confident changing the separator to /. I have a lot of mails imported with the . separator and I'm worried something will get lost. - Hugh