(I'm sorry for breaking the thread with each mail) On 09/09/2011 10:04 AM, Jan-Frode Myklebust wrote: > On Fri, Sep 09, 2011 at 08:18:40AM +0100, mailing lists wrote: >> >> and how to I might configure dovecot to use the mail directory as a >> subdirectory of the home directory? >> >> this way all lookups for home (with %%h fetched from ldap) will return the >> correct locationand mail will be in (i.e.) ~/mailSubDir >> >> is this configuration possible? > > In the main dovecot.conf: > > mail_location = maildir:~/mailSubDir > > In the ldap-config: > > user_attrs = homeFilter=home
and which is the value for the location directive in namespace declaration ?? namespace { list = children location = maildir:%%h/mailSubDir:INDEX=~/mailSubDIr/shared/%%u prefix = shared.%%u. separator = . subscriptions = no type = shared } with the above conf. no shared folders are seen by tests users and afaik %%h is retrieved from ldap. this is that I had done until now: # telnet localhost 143 Trying ::1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN] Dovecot ready. . login user001 secret . OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT CHILDREN NAME . create INBOX.docs-user001 . OK Create completed. . setacl INBOX.docs-user001 user002 lr . OK Setacl complete. . logout * BYE Logging out . OK Logout completed. Connection closed by foreign host. # telnet localhost 143 Trying ::1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN] Dovecot ready. . login user002 secret . OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT CHILDREN NAME . create INBOX.docs-user002 . OK Create completed. . setacl INBOX.docs-user002 user001 lr . OK Setacl complete. . logout * BYE Logging out . OK Logout completed. Connection closed by foreign host. # cat /var/maildir/shared-mailboxes shared/shared-boxes/user/user002/user001 1 shared/shared-boxes/user/user002/user002 1 shared/shared-boxes/user/user001/user001 1 shared/shared-boxes/user/user001/user002 1 # cat /var/maildir/vol04/4/46/user001/.docs-user001/dovecot-acl user=user002 lr # cat /var/maildir/vol05/4/40/user002/.docs-user002/dovecot-acl user=user001 lr # telnet localhost 143 Trying ::1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN] Dovecot ready. . login user001 secret . OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS ACL RIGHTS=texk] Logged in . namespace * NAMESPACE (("INBOX." ".")) (("shared." ".")) NIL . OK Namespace completed. . list "shared." "*" . OK List completed. /--------------/ # grep ^[^#] /etc/dovecot/dovecot-ldap.conf.ext uris = ldap://ldap.example.com dn = cn=testuser,dc=example,dc=com dnpass = secret sasl_bind = no tls = no auth_bind = yes ldap_version = 3 base = dc=example,dc=com deref = never scope = subtree user_attrs = mailbox=mail=maildir:/var/maildir/%$,homeFilter=home user_filter = (&(objectClass=CourierMailAccount)(uid=%u)) pass_filter = (&(objectClass=CourierMailAccount)(uid=%u)) # dovecot -n # 2.0.14: /etc/dovecot/dovecot.conf # OS: Linux 2.6.34.7-0.7-xen x86_64 openSUSE 11.3 (x86_64) auth_debug = yes auth_debug_passwords = yes auth_verbose = yes auth_verbose_passwords = plain base_dir = /var/run/dovecot/ disable_plaintext_auth = no mail_debug = yes mail_fsync = always mail_gid = 5000 mail_location = maildir:~/mailSubDir mail_nfs_index = yes mail_nfs_storage = yes mail_plugins = acl mail_uid = 5000 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 mmap_disable = yes namespace { inbox = yes location = prefix = INBOX. separator = . } namespace { list = children location = maildir:%%h/mailSubDir:INDEX=~/mailSubDir/shared/%%u prefix = shared.%%u. separator = . subscriptions = no type = shared } passdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } plugin { acl = vfile acl_shared_dict = file:/var/maildir/shared-mailboxes sieve = ~/.dovecot.sieve sieve_dir = ~/sieve } protocols = imap lmtp service lmtp { inet_listener lmtp { port = 24 } unix_listener lmtp { user = vmail } } ssl = no userdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } verbose_proctitle = yes protocol lmtp { mail_plugins = acl } protocol lda { mail_plugins = acl } protocol imap { mail_max_userip_connections = 100 mail_plugins = acl imap_acl autocreate }