diff options
author | Werner Koch <[email protected]> | 2019-05-20 10:31:55 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2019-05-20 10:31:55 +0000 |
commit | 110a4550179fd1faeee8d2f17a33ed7807a397ae (patch) | |
tree | 8d5b840f530e5cbf75c486957451fd273f0a5b72 | |
parent | gpg: Fix using --decrypt along with --use-embedded-filename. (diff) | |
download | gnupg-110a4550179fd1faeee8d2f17a33ed7807a397ae.tar.gz gnupg-110a4550179fd1faeee8d2f17a33ed7807a397ae.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]>
-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 cc5673846..276080532 100644 --- a/g10/delkey.c +++ b/g10/delkey.c @@ -188,7 +188,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); @@ -219,7 +219,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"), @@ -232,7 +232,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")); |