Hi, I have found two small problems with the LDAP backend, and a trivial fix for both.
Problem 1: When the DN contains the characters "(" or ")", the filter string for searching the entry is wrong. Parentheses are part of the filter syntax, and must be escaped with backslashes. Problem 2: Evolution has the strange habit not to rename the DN when one changes the CN. E.g. it may happen the the DN cn=person1,o=sample has the CN attribute cn=person2. Although unusual, this is not strictly wrong. The solution is not to use search by filters, but by basename. The following patch implements this. Btw, I am quite impressed by multisync. It works for me with a Siemens S65, connected by infrared, and an OpenLDAP directory (configured for Evolution). Gerd --- ldap.c.orig 2005-01-31 13:57:18.596546937 +0100 +++ ldap.c 2005-01-31 14:58:30.965815263 +0100 @@ -290,8 +290,8 @@ ldapentry->ldapdata = g_malloc0(1024 * sizeof(LDAPMod *)); - sprintf(filter, "(&(objectClass=*)(%s))", ldap_explode_dn(quoted_decode(ldapentry->uid), 0)[0]); - if (ldap_search_s(conn->ld, conn->searchbase, conn->scope, filter, attrs, 0, &res)) { + sprintf(filter, "(objectClass=*)"); + if (ldap_search_s(conn->ld, quoted_decode(ldapentry->uid), LDAP_SCOPE_BASE, filter, attrs, 0, &res)) { ldap_debug(conn, 0, "Unable to search with filter %s", filter); return; } -- ------------------------------------------------------------ Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany [EMAIL PROTECTED] http://www.gerd-stolpmann.de ------------------------------------------------------------ ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ Multisync-devel mailing list Multisync-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/multisync-devel