I got used to virtual domain aliases during the time I used qmail + vpopmail so I am looking for the best way to implement it in Courier + authldap. Any ideas?
The functionality I want includes having different virtual domain aliases that work exactly as the virtual domain to which they refer, i.e., mail to [EMAIL PROTECTED] is delivered to [EMAIL PROTECTED]
If someuser wants to check his mailbox he can login using [EMAIL PROTECTED] or [EMAIL PROTECTED] as his username.
If I change the password of [EMAIL PROTECTED] the password of [EMAIL PROTECTED] would be changed automatically and vice-versa.
If I create some.other.virtual.domain.alias also pointing to virtual.domain all the above functionality would be present and all users available at virtual.domain would also be available at some.other.virtual.domain.alias.
Mail to nonexisting users on any of the defined virtual domains or virtual domain aliases should be rejected during the initial smtp conversation.
Users should still be able to create individual .mailfilter files to, for example, automatically deliver certain messages to certain folders inside their mailboxes.
Is there a "official" best way to implement this?
Right now I have it working with Courier + authmysql. I am not sure I did it the best way but it works: I use the MYSQL_SELECT_CLAUSE to define a diferent query on a diferent database structure. The structure separates the user info, the virtual domain info and the virtual domain alias info in 3 separate tables (I am presenting here a simplified version of my tables):
user ------------ cod_user name password path quota cod_virtual_domain
virtual_domain -------------------- cod_virtual_domain virtual_domain uid gid
virtual_domain_alias ---------------------------- cod_virtual_domain_alias virtual_domain_alias cod_virtual_domain
My MYSQL_SELECT_CLAUSE looks like:
SELECT CONCAT(user.name, '@', virtual_domain_alias.virtual_domain_alias), \ user.password, \ '', \ virtual_domain.uid, \ virtual_domain.gid, \ user.path, \ user.quota, \ '' \ FROM user INNER JOIN virtual_domain USING (cod_virtual_domain) \ INNER JOIN virtual_domain_alias USING (cod_virtual_domain) \ WHERE (virtual_domain_alias.virtual_domain_alias = '$(domain)') \ AND (user.username = '$(local_part)')
It's in fact simple and works.
How can I do that with authldap? I am new to ldap which probably is the reason I can't figure how to do it but the point is: I can't see how to create a similar functionality with ldap. Suggestions?
Rodrigo Severo
-- ---------------------------------------------------- Rodrigo Severo Fábrica de Idéias Fone: +55(61)321 1357 Fax: +55(61)223 1712 SBS - Quadra 2 - Ed. Empire Center - Sala 1301 Brasília/DF - Brasil CEP: 70.070-904 ----------------------------------------------------
------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ courier-users mailing list [EMAIL PROTECTED] Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users