From 2f98d8a0f92dc991bff406e159690a111202fcb4 Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Fri, 4 Jun 2021 13:44:05 +0900 Subject: [PATCH] agent: Appropriate error code for importing key with no passwd. * agent/cvt-openpgp.c (convert_from_openpgp_main): Return GPG_ERR_BAD_SECKEY. -- Backport master commit of: 21ef425e222ddfa460b37dece63adb67ff2e4dd1 When non-protected case, error at gcry_pk_testkey results GPG_ERR_BAD_PASSPHRASE. Here, it should be converted to GPG_ERR_BAD_SECKEY, or else, user will be asked passwd even if it's not protected. Signed-off-by: NIIBE Yutaka --- agent/cvt-openpgp.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/agent/cvt-openpgp.c b/agent/cvt-openpgp.c index ff153c358..130468667 100644 --- a/agent/cvt-openpgp.c +++ b/agent/cvt-openpgp.c @@ -946,6 +946,8 @@ convert_from_openpgp_main (ctrl_t ctrl, gcry_sexp_t s_pgp, int dontcare_exist, if (!is_protected) { err = try_do_unprotect_cb (pi); + if (gpg_err_code (err) == GPG_ERR_BAD_PASSPHRASE) + err = gpg_error (GPG_ERR_BAD_SECKEY); } else if (cache_nonce) {