[Dovecot] ACL not copied to new mailboxes
Markus Weippert
mweippert at eteleon.de
Mon Aug 5 14:33:44 EEST 2013
Hi,
I had some trouble with ACLs not being copied to new child mailboxes in
dovecot 2.2.4. It doesn't matter whether it's a private, shared or
public mailbox I create the folder in, the ACLs just seems to be ignored.
Anyway, I debugged the executable and came up with the attached patch.
Since I'm not a developer, I'm not 100% sure about this but it works for
me now.
Regards,
Markus
# dovecot --build-options
Build options: ioloop=epoll notify=inotify ipv6 openssl io_block_size=8192
Mail storages: shared mdbox sdbox maildir mbox cydir imapc pop3c raw fail
SQL drivers: mysql
Passdb: checkpassword ldap pam passwd passwd-file shadow sql
Userdb: checkpassword ldap nss passwd prefetch passwd-file sql
# doveconf -n
# 2.2.4: /usr/local/etc/dovecot/dovecot.conf
# OS: Linux 3.2.0-48-generic x86_64 Ubuntu 12.04.2 LTS
auth_cache_negative_ttl = 5 mins
auth_cache_size = 10 M
auth_cache_ttl = 1 mins
auth_debug = yes
auth_master_user_separator = *
auth_mechanisms = plain login
auth_verbose = yes
first_valid_gid = 122
first_valid_uid = 114
imap_client_workarounds = tb-extra-mailbox-sep tb-lsub-flags
last_valid_gid = 122
last_valid_uid = 114
mail_debug = yes
mail_gid = vmail
mail_plugins = acl
mail_privileged_group = vmail
mail_uid = vmail
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 ihave
namespace {
alias_for =
hidden = yes
inbox = no
list = no
location =
prefix = INBOX.
separator = .
type = private
}
namespace {
list = children
location = maildir:/var/vmail/public/%d:LAYOUT=fs
prefix = Public/
separator = /
subscriptions = no
type = public
}
namespace {
list = children
location = maildir:/var/vmail/mail/%%d/%%n:INDEX=~/shared/%%d/%%n
prefix = Shared/%%u/
separator = /
subscriptions = no
type = shared
}
namespace inbox {
inbox = yes
location =
mailbox Drafts {
auto = subscribe
special_use = \Drafts
}
mailbox Junk {
auto = subscribe
special_use = \Junk
}
mailbox Sent {
auto = subscribe
special_use = \Sent
}
mailbox Trash {
auto = subscribe
special_use = \Trash
}
prefix =
separator = /
type = private
}
passdb {
args = /etc/dovecot/auth/%s.master
driver = passwd-file
master = yes
pass = yes
}
passdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
plugin {
acl = vfile:/var/vmail/acls:cache_secs=300
acl_shared_dict = file:/var/vmail/mail/shared-mailboxes.db
sieve = ~/dovecot.sieve
sieve_after = /var/vmail/sieve/after
sieve_before = /var/vmail/sieve/before
sieve_default = /var/vmail/sieve/default.sieve
sieve_dir = ~/sieve
sieve_global_dir = /var/vmail/sieve/global
}
protocols = imap lmtp sieve
service auth {
unix_listener /var/spool/postfix/private/dovecot-auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-userdb {
mode = 0777
}
}
service imap-login {
process_min_avail = 10
service_count = 0
}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0660
user = postfix
}
}
ssl_cert = </etc/ssl/dovecot.pem
ssl_cipher_list = HIGH:!MD5:!eNULL
ssl_key = </etc/ssl/dovecot.pem
userdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
protocol lmtp {
mail_plugins = acl sieve
}
protocol lda {
mail_plugins = acl sieve
}
protocol imap {
mail_plugins = acl imap_acl
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: copy_acl.patch
Type: text/x-patch
Size: 469 bytes
Desc: not available
URL: <http://dovecot.org/pipermail/dovecot/attachments/20130805/7364a354/attachment.bin>
More information about the dovecot
mailing list