On Mon, 2010-11-22 at 21:32 -0800, Daniel L. Miller wrote: > I think I got it - probably by accident. Just because it's actually > working doesn't mean it's *correct* - does this look right? Do I have > redundant/obsolete parms specified? > > passdb { > driver = ldap > args = /usr/local/etc/dovecot/dovecot-ldap.conf > } > userdb { > driver = prefetch > } > userdb { > driver = ldap > # symlink to dovecot-ldap.conf > args = /usr/local/etc/dovecot/dovecot-ldap-userdb.conf > }
The symlink isn't very useful. It'll just cause extra LDAP connections to be created, since that userdb is used only for iteration anyway and iterations are always executed in their own separate processes with separate LDAP connection. > user_attrs = =home=/var/mail/%d/%n, \ > =mail=mdbox:/var/mail/%d/%n/mdbox, \ > =uid=vmail, \ > =gid=mail > user_filter = (&(objectClass=inetOrgPerson)(mail=%u)) > pass_attrs = mail=user, \ > userPassword=password, \ > =userdb_home=/var/mail/%d/%n, \ > =userdb_mail=mdbox:/var/mail/%d/%n/mdbox, \ > =userdb_uid=vmail, \ > =userdb_gid=mail You could put all of the userdb_* stuff to mail_* settings, but since you're using userdb prefetch there has to be one at least. :) So maybe just keep userdb_home there and put the rest to dovecot.conf: mail_location = mdbox:~/mdbox mail_uid = vmail mail_gid = mail