aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2019-05-20 10:31:55 +0000
committerWerner Koch <[email protected]>2019-05-20 10:52:22 +0000
commit5c46c5f74540ad753b925b74593332ca92de47fa (patch)
treee2459f28d7a68f37074be02eedb58437f5790d96
parentgpg: Fix using --decrypt along with --use-embedded-filename. (diff)
downloadgnupg-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.c6
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"));