LDAP: Incorrectly converts SExp to LDAP query
When doing LDAP searches Evolution transforms a search expression into LDAP's search expression incorrectly. It takes the search expression: (and (exists "x509Cert") (or (is "email" "emailaddress"))) and converts it to: (| (userCertificate=*) (mail=emailaddress) ) which is incorrect. The 'or' is causing the LDAP search to return all uses with a certificate which in turn causes an LDAP timeout on large LDAP databases.
Edited by Milan Crha