[Dovecot] Dovecot does not update acl_shared_dict file
Hi all,
Firstly, thanks for all your effort with this software. Much appreciated.
I am having a slight issues trying to enable reading of other users
mailboxes. The docs are a little sparse for those that aren't
mailadmin heros, I wonder if anyone could please help me see where I
am going wrong.
I would like to allow some users to list and read the mailboxes of
others. E.g:
When User1 logs in, they are presented with a list of their own
folders, and those of User2, User3, etc to which they have (e.g.
read/list) access
I followed the instructions on the wiki (for Version 1.X)- there are
two concepts here:
the form of a BDB file:
- Grant some [e.g. list/read] access on a mailbox folder to a particular user
- Enable the acl_shared_dict to allow dovecot to track (and display
to IMAP clients) the folders to which they have access. This will take
/var/lib/dovecot/shared-mailboxes.db
This file can only be updated by using the SETACL command. *This is
where I have the problem*. The SETACL command does nothing.
No matter how hard I try, I cannot get dovecot to update this file.
The only indication I have that the file exists and is readable by
dovecot is the disappearance from the logs of the line:
No acl_shared_dict setting - shared mailbox listing is disabled
So I can see that dovecot knows the file is there because it does not
complain any more.
The file is there (because I created it myself, although it is empty:
size = 0), and in a moment of weakness I made sure it could be updated
(this will be changed back!):
ls -l /var/lib/dovecot/shared-mailboxes.db
-rwxrwxrwx 1 dovecot dovecot 0 2012-10-30 12:27
/var/lib/dovecot/shared-mailboxes.db
But if I try to update the ACL, absolutely nothing happens: [ > command ] [ < reply ]
telnet localhost 143 < * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID
ENABLE STARTTLS AUTH=CRAM-MD5] Email server a login [User2] [pass]
< a OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID
ENABLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND
UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1
CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH ACL
RIGHTS=texk] Logged in
a SETACL Inbox [User 1] rl < a OK Setacl complete.
At this time, in the dovecot log (with debug enabled):
2012-10-30 13:55:24 IMAP([User2]): Info: Namespace : Using permissions
from /home/mailboxes/[domain]/[User1]: mode=0770 gid=-1
2012-10-30 13:55:24 IMAP([User2]): Info: acl vfile: reading file
/home/mailboxes/[domain]/[User1]/dovecot-acl
2012-10-30 13:55:24 IMAP([User2]): Info: acl vfile: reading file
/home/mailboxes/[domain]/[USer1]/dovecot-acl
Can anyone please help me track down what I'm doing wrong here?! It's
driving me mad! Thanks for your time if you've read this far!!
As requested: dovecot --version 1.2.9
base_dir: /var/run/dovecot/ log_path: /var/log/dovecot info_log_path: /var/log/dovecot.info log_timestamp: %Y-%m-%d %H:%M:%S protocols: imaps imap listen: 127.0.0.1:143 ssl_listen: 37.235.54.98 ssl_cert_file: /etc/ssl/dovecot.crt ssl_key_file: /etc/ssl/private/dovecot.key login_dir: /var/run/dovecot/login login_executable: /usr/lib/dovecot/imap-login login_greeting: Email server valid_chroot_dirs: /var/spool/vmail mail_location: maildir:/home/mailboxes/%d/%n mail_debug: yes mbox_write_locks: fcntl dotlock mail_plugins: acl imap_acl lda: postmaster_address: [ valid@ddress ] auth default: mechanisms: plain cram-md5 verbose: yes passdb: driver: passwd-file args: /etc/dovecot/passwd userdb: driver: passwd-file args: /etc/dovecot/users socket: type: listen client: path: /var/spool/postfix/private/auth-client mode: 432 user: postfix group: postfix master: path: /var/spool/postfix/private/auth-master mode: 384 user: postfix group: postfix plugin: acl: vfile acl_shared_dict: file:/var/lib/dovecot/shared-mailboxes.db acl: vfile:/etc/dovecot/acls
participants (1)
-
Chris Smith