diff options
author | Werner Koch <wk@gnupg.org> | 2021-04-26 14:15:21 +0200 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2021-04-26 14:15:21 +0200 |
commit | 99db4b0c7fd128ea5b2e251fe854bd57f6322238 (patch) | |
tree | 8e6c56eb3c6c25d8883122d364b7435dee0e5183 /g10/import.c | |
parent | gpg: Auto import keys specified with --trusted-keys. (diff) | |
download | gnupg2-99db4b0c7fd128ea5b2e251fe854bd57f6322238.tar.xz gnupg2-99db4b0c7fd128ea5b2e251fe854bd57f6322238.zip |
gpg: Do not use import-clean for LDAP keyserver imports.
* g10/options.h (opts): New field expl_import_only.
* g10/import.c (parse_import_options): Set it.
* g10/keyserver.c (keyserver_get_chunk): Add special options for LDAP.
--
I can be assumed that configured LDAP servers are somehow curated and
not affected by rogue key signatures as the HKP servers are. Thus we
don't clean the key anymore so that key certifications are kept even
if the public key has not yet been imported.
See-commit: 6c26e593df51475921410ac97e9227df6b258618
GnuPG-bug-id: 5387
Diffstat (limited to 'g10/import.c')
-rw-r--r-- | g10/import.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/g10/import.c b/g10/import.c index 62ee2a46e..821ddf0d4 100644 --- a/g10/import.c +++ b/g10/import.c @@ -225,12 +225,14 @@ parse_import_options(char *str,unsigned int *options,int noisy) {NULL,0,NULL,NULL} }; int rc; - int saved_self_sigs_only; + int saved_self_sigs_only, saved_import_clean; - /* We need to set a flag indicating wether the user has set - * IMPORT_SELF_SIGS_ONLY or it came from the default. */ + /* We need to set flags indicating wether the user has set certain + * options or if they came from the default. */ saved_self_sigs_only = (*options & IMPORT_SELF_SIGS_ONLY); saved_self_sigs_only &= ~IMPORT_SELF_SIGS_ONLY; + saved_import_clean = (*options & IMPORT_CLEAN); + saved_import_clean &= ~IMPORT_CLEAN; rc = parse_options (str, options, import_opts, noisy); @@ -239,6 +241,12 @@ parse_import_options(char *str,unsigned int *options,int noisy) else *options |= saved_self_sigs_only; + if (rc && (*options & IMPORT_CLEAN)) + opt.flags.expl_import_clean = 1; + else + *options |= saved_import_clean; + + if (rc && (*options & IMPORT_RESTORE)) { /* Alter other options we want or don't want for restore. */ |