Hi all,
I've just completed and commited the authldap layer. It is feature complete, but still needs more testing and some polishing as well.
Once you've set this up, you can use dbmail-users to manage your dbmail users in ldap, including aliases and external forwards.
Connecting with existing ldap trees is still unexplored territory. The actual objectClasses for your ldapusers are set in dbmail.conf, but the implementation currently probably still depends on the special dbmail.schema file included in the dbmail source. This schema file provides two new ldap objects: dbmailUser and dbmailForwardingAddress which are both layered on top of the core 'account' object.
The current implementation maintains and requires a 'shadow' entry in sql of every dbmailUser in ldap. The uidNumber for such a ldap user must be equal to the user_idnr field in dbmail_users. To manage these shadow entries, I've moved some of the code from authsql.c to db.c, leaving only wrappers in place.
A full set of test-cases is present in check_dbmail_delivery.c. They all pass of course. The imap testsuite also passes ok, and thunderbird is quite happy connecting to a ldap authenitating dbmail-imapd. Beyond that I havent' done any testing yet.
One final issue: if you want to start using ldap on a existing dbmail installation, you have to make sure the user_idnrs and uidNumbers align. Since the user_idnrs will likely collide with existing posix uids you'll have to change the user_idnrs in the database. That's not a trivial matter if you're using foreign keys. I've changed the create_table_xxx and migratie_1.x_to_2.0 files to add ON UPDATE CASCADE after the ON DELETE CASCADE so updating the user_idnr is possible. The numerical deliver_to values will however have to be updated manually.
happy testing, -- ________________________________________________________________ Paul Stevens [EMAIL PROTECTED] NET FACILITIES GROUP GPG/PGP: 1024D/11F8CD31 The Netherlands_______________________________________www.nfg.nl