diff options
author | Werner Koch <[email protected]> | 2019-05-20 10:31:55 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2019-05-20 10:52:22 +0000 |
commit | 5c46c5f74540ad753b925b74593332ca92de47fa (patch) | |
tree | e2459f28d7a68f37074be02eedb58437f5790d96 | |
parent | gpg: Fix using --decrypt along with --use-embedded-filename. (diff) | |
download | gnupg-5c46c5f74540ad753b925b74593332ca92de47fa.tar.gz gnupg-5c46c5f74540ad753b925b74593332ca92de47fa.zip |
gpg: Do not delete any keys if --dry-run is passed.
* g10/delkey.c (do_delete_key): Don't delete the keyblock on dry runs.
Do not clear the ownertrust. Do not let the agent delete the key.
--
Co-authored-by: Matheus Afonso Martins Moreira
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to '')
-rw-r--r-- | g10/delkey.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/g10/delkey.c b/g10/delkey.c index bf8c4e93b..461a2c886 100644 --- a/g10/delkey.c +++ b/g10/delkey.c @@ -190,7 +190,7 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, * pre-caution is that since 2.1 the secret key may also * be used for other protocols and thus deleting it from * the gpg would also delete the key for other tools. */ - if (!err) + if (!err && !opt.dry_run) err = agent_delete_key (NULL, hexgrip, prompt, opt.answer_yes); xfree (prompt); @@ -221,7 +221,7 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, } else { - err = keydb_delete_keyblock (hd); + err = opt.dry_run? 0 : keydb_delete_keyblock (hd); if (err) { log_error (_("deleting keyblock failed: %s\n"), @@ -234,7 +234,7 @@ do_delete_key (ctrl_t ctrl, const char *username, int secret, int force, revalidation_mark(). This makes sense - only deleting keys that have ownertrust set should trigger this. */ - if (!secret && pk && clear_ownertrusts (ctrl, pk)) + if (!secret && pk && !opt.dry_run && clear_ownertrusts (ctrl, pk)) { if (opt.verbose) log_info (_("ownertrust information cleared\n")); |