dirmngr: Support gpgMailbox for mode MAILSUB and MAILEND.

* dirmngr/ks-engine-ldap.c (keyspec_to_ldap_filter): Use gpgMailbox if
server supports this.
This commit is contained in:
Werner Koch 2022-09-26 14:38:11 +02:00
parent 1b2ac21c4c
commit acabbc0078
No known key found for this signature in database
GPG Key ID: E3FDFF218E45B72B
1 changed files with 8 additions and 2 deletions

View File

@ -223,13 +223,19 @@ keyspec_to_ldap_filter (const char *keyspec, char **filter, int only_exact,
break;
case KEYDB_SEARCH_MODE_MAILSUB:
if (! only_exact)
if ((serverinfo & SERVERINFO_SCHEMAV2))
f = xasprintf("(&(gpgMailbox=*%s*)(!(|(pgpRevoked=1)(pgpDisabled=1))))",
(freeme = ldap_escape_filter (desc.u.name)));
else if (!only_exact)
f = xasprintf ("(pgpUserID=*<*%s*>*)",
(freeme = ldap_escape_filter (desc.u.name)));
break;
case KEYDB_SEARCH_MODE_MAILEND:
if (! only_exact)
if ((serverinfo & SERVERINFO_SCHEMAV2))
f = xasprintf("(&(gpgMailbox=*%s)(!(|(pgpRevoked=1)(pgpDisabled=1))))",
(freeme = ldap_escape_filter (desc.u.name)));
else if (!only_exact)
f = xasprintf ("(pgpUserID=*<*%s>*)",
(freeme = ldap_escape_filter (desc.u.name)));
break;