From 1d33d03f0bb576601f5eef1a548cbc519f251b17 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Thu, 18 Sep 2014 16:00:34 +0200 Subject: [PATCH] gpg: --delete-secret-key - check that a secret key exists. * g10/delkey.c (do_delete_key): Check availibility of a secret key. -- Actually we check that at least one secret subkey exists. --- g10/delkey.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/g10/delkey.c b/g10/delkey.c index 3de705dfa..063de78e6 100644 --- a/g10/delkey.c +++ b/g10/delkey.c @@ -111,6 +111,15 @@ do_delete_key( const char *username, int secret, int force, int *r_sec_avail ) err = 0; } + if (secret && !have_secret_key_with_kid (keyid)) + { + err = gpg_error (GPG_ERR_NOT_FOUND); + log_error (_("key \"%s\" not found: %s\n"), username, gpg_strerror (err)); + write_status_text (STATUS_DELETE_PROBLEM, "1"); + goto leave; + } + + if (opt.batch && exactmatch) okay++; else if (opt.batch && secret)