Sponsoring a canon_user plugin for LDAP lookup

Torsten Schlabach tschlabach at gmx.net
Thu Jan 11 05:55:26 EST 2007


Hi!

We are in needed of a canon_user plugin.

The scope is quite simple:

We use technical IDs for mailbox names in Cyrus IMAPd. Our mailboxes are 
called mb00001, mb00002, mb00003, ... You get the concept. In our MTA we 
have defined aliases for the actual email addresses that point to a 
mailbox, so each user can have multiple email addresses connected to a 
single mailbox, for example:

info at domain.com -> mb000002
john.doe at domain.de -> mb000002
john.doe at another.de -> mb000002
someome at else.net -> mb000816

This is handles by the MTA (Exim) querying LDAP for object like this one:

dn: mailAlias=someone,ou=...
dc: else.com
mailAlias: someone
objectClass: mailAlias
objectClass: mailDomain
objectClass: top
mailAliasedName: mb000816

We've also configured Cyrus IMAPd to query LDAP via the SASL layer where 
we store user objects, such as:

dn: uid=mb000816,ou=.....
uid: mb000816
objectClass: account
objectClass: simpleSecurityObject
objectClass: top
userPassword: xxxxxxx

Now users would like to be able to use one of their email addresses to 
login, rather than having to remember their mbXXXXXX id.

I understand that this is what a canon_user plugin would be suitable 
for, so it would just take the user's input of a username (in this case 
someone at else.com), do a lookup for a mailAlias object in LDAP which has 
dc={domain part of email address} and mailAlias={local part of email 
address} and return the mailAliasedName attribute, which id the Cyrus 
IMAPd mailbox id.

 From looking at a sample I would guess that this will be 100 lines of 
code or less. But we don't have any experienced C programmer and as this 
is meant for production use, I would appreciate this done by someone who 
knows that he doing. And it would be great if this had a chance to 
become part of the codebase.

So as nobody obviously felt the need for that before, we're thinking of 
paying someone to do it and donate the code. As I think this is a quite 
limited scope, we'd be hoping this could be done for a lower 3-digit USD 
figure?

Anyone intersted?

Regards,
Torsten


More information about the Cyrus-sasl mailing list