mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
gpg: New AKL method "ntds"
* dirmngr/ks-engine-ldap.c (keyspec_to_ldap_filter): Change the new support for KEYDB_SEARCH_MODE_MAIL. (ks_ldap_get): Add a debug. * g10/options.h (AKL_NTDS): New. * g10/keyserver.c (keyserver_import_ntds): New. (keyserver_get_chunk): Allow KEYDB_SEARCH_MODE_MAIL. * g10/getkey.c (parse_auto_key_locate): Support "ntds". (get_pubkey_byname): Ditto.
This commit is contained in:
parent
776bef74c7
commit
559efd23e9
8 changed files with 90 additions and 6 deletions
|
@ -1159,6 +1159,21 @@ keyserver_import_name (ctrl_t ctrl, const char *name,
|
|||
}
|
||||
|
||||
|
||||
/* Import the keys that match exactly MBOX */
|
||||
int
|
||||
keyserver_import_ntds (ctrl_t ctrl, const char *mbox,
|
||||
unsigned char **fpr, size_t *fprlen)
|
||||
{
|
||||
KEYDB_SEARCH_DESC desc = { 0 };
|
||||
struct keyserver_spec keyserver = { NULL, "ldap:///" };
|
||||
|
||||
desc.mode = KEYDB_SEARCH_MODE_MAIL;
|
||||
desc.u.name = mbox;
|
||||
|
||||
return keyserver_get (ctrl, &desc, 1, &keyserver, 0, fpr, fprlen);
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
keyserver_import_fprint (ctrl_t ctrl, const byte *fprint,size_t fprint_len,
|
||||
struct keyserver_spec *keyserver, int quick)
|
||||
|
@ -1690,6 +1705,25 @@ keyserver_get_chunk (ctrl_t ctrl, KEYDB_SEARCH_DESC *desc, int ndesc,
|
|||
quiet = 1;
|
||||
}
|
||||
}
|
||||
else if(desc[idx].mode == KEYDB_SEARCH_MODE_MAIL)
|
||||
{
|
||||
n = 1 + strlen (desc[idx].u.name) + 1 + 1;
|
||||
if (idx && linelen + n > MAX_KS_GET_LINELEN)
|
||||
break; /* Declare end of this chunk. */
|
||||
linelen += n;
|
||||
|
||||
if (desc[idx].u.name[0] == '<')
|
||||
pattern[npat] = xtrystrdup (desc[idx].u.name);
|
||||
else
|
||||
pattern[npat] = strconcat ("<", desc[idx].u.name, ">", NULL);
|
||||
if (!pattern[npat])
|
||||
err = gpg_error_from_syserror ();
|
||||
else
|
||||
{
|
||||
npat++;
|
||||
quiet = 1;
|
||||
}
|
||||
}
|
||||
else if (desc[idx].mode == KEYDB_SEARCH_MODE_NONE)
|
||||
continue;
|
||||
else
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue