[Kolab-devel] Cyrus ptloader and canonification ( '.' and '^' divider in addresses )

Cornelius Hald <[email protected]>
Newsgroups gmane.comp.kde.devel.kolab,gmane.comp.kde.kolab.user
Message-ID <[email protected]>
Hi guys!

Yesterday I've tried again to hunt down my mysterious crashes in
ptloader. Therefore I've forked the cyrus package on OBS and added a lot
of debug output to ptclient/ldap.c. In particular to ptsmodule_get_dn()
because that is where the crash occurs.

I'm still not sure what causes the crash, but found something else I
can't really explain. So I'm hoping someone here could point me in the
right direction.

It looks like ptsmodule_get_dn() tries to find the DN for a given user
(or email address, or alias, etc.)

Usually the generated LDAP filter looks like this:
(|(&(|(uid=cyrus-admin)(uid=cyrus-murder))(uid=peter.weber))(&(|(uid=peter.weber)([email protected])(mail=peter.weber@))(objectclass=kolabinetorgperson)))

And returns a DN like that:
uid=weber,ou=People,dc=example,dc=com

So far so good. But sometimes I see queries for the same user but with
'^' instead of '.' as divider between first name and last name.

Like this:
(|(&(|(uid=cyrus-admin)(uid=cyrus-murder))(uid=peter^weber))(&(|(uid=peter^weber)(mail=peter^[email protected])(mail=peter^weber@))(objectclass=kolabinetorgperson)))

Those queries do not return a valid DN but PTSM_FAIL.

So my question is: Why are the requests sometimes in one format and
sometimes in a different format. And is that intentional.

Thanks!
Conny
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.