Bug Report: %% variables not expanded properly with shared namespace using . as separator
Hugh Bragg
hughbragg at dodo.com.au
Fri Feb 19 08:51:36 UTC 2016
I think this is a bug.
I'd expect that location %% variables are translated the same way %
variables are interpreted, but apparently this isn't the case.
virtual folders work fine, but my shared folders fail because of the .
in the domain name.
What I get is the following:
# 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
I know there is a similar report for usernames, but these should be
interpreted at the top level and not inside the maildir.
I hope this is enough info. Let me know if I can supply any further
information.
Hugh
Here is my config:
# dovecot -n
# 2.2.21 (5345f22): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.11 (6ddf62b87f60+)
# OS: Linux 4.3.5-300.fc23.x86_64 x86_64 Fedora release 23 (Twenty Three)
auth_mechanisms = plain login
auth_socket_path = /var/run/dovecot/auth-userdb
imap_client_workarounds = tb-extra-mailbox-sep
listen = *
log_path = /var/log/dovecot.log
mail_access_groups = mail, vmail
mail_home = /var/mail/vmail/%d/%n
mail_location = maildir:~/mail
mail_plugins = virtual, acl
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope
encoded-character vacation subaddress comparator-i;ascii-numeric
relational regex imap4flags copy include variables body enotify
environment mailbox date index ihave duplicate mime foreverypart
mbox_write_locks = fcntl
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Junk {
special_use = \Junk
}
mailbox Sent {
special_use = \Sent
}
mailbox "Sent Messages" {
special_use = \Sent
}
mailbox Trash {
special_use = \Trash
}
prefix =
}
namespace others {
list = children
location =
maildir:/var/mail/vhosts/%%d/%%n/mail:INDEX=/var/mail/vhosts/%d/%n/shared/%%u
prefix = shared.%%u.
separator = .
subscriptions = yes
type = shared
}
namespace virtual {
location = virtual:/var/mail/vhosts/%d/%n/virtual
prefix = virtual.
separator = .
}
passdb {
args = scheme=PLAIN username_format=%u /etc/dovecot/dovecot-users
driver = passwd-file
}
plugin {
acl = vfile
acl_shared_dict = file:/var/mail/vhosts/shared-mailboxes.db
sieve = ~/.dovecot.sieve
sieve_dir = ~/sieve
sieve_global_dir = /var/mail/vhosts/sieve-global
}
protocols = imap lmtp sieve
service auth-worker {
user = vmail
}
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-userdb {
group = vmail
mode = 0660
user = vmail
}
}
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 0
ssl = yes
}
}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0600
user = postfix
}
}
service managesieve-login {
inet_listener sieve {
port = 4190
}
}
service pop3-login {
inet_listener pop3 {
port = 0
}
inet_listener pop3s {
port = 0
}
}
ssl = required
ssl_cert = </etc/pki/dovecot/certs/hjbmx.ddns.net.cert.pem
ssl_cipher_list = PROFILE=SYSTEM
ssl_key = </etc/pki/dovecot/private/hjbmx.ddns.net.key.pem
userdb {
args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n
driver = static
}
protocol lmtp {
mail_plugins = virtual, acl , sieve
}
protocol lda {
mail_plugins = virtual, acl , sieve
}
protocol imap {
mail_plugins = virtual, acl , imap_acl
}
More information about the dovecot
mailing list