From 1e6b96577f681992249bbd39c157d9fc05df0ac4 Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Wed, 10 Jul 2024 15:13:06 +0900 Subject: [PATCH] gpg: Fix agent_probe_any_secret_key. * g10/call-agent.c (agent_probe_any_secret_key): No second keygrip is not an error. -- GnuPG-bug-id: 7195 Signed-off-by: NIIBE Yutaka --- g10/call-agent.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/g10/call-agent.c b/g10/call-agent.c index 3a4d35b07..54d8f62f1 100644 --- a/g10/call-agent.c +++ b/g10/call-agent.c @@ -2434,9 +2434,14 @@ agent_probe_any_secret_key (ctrl_t ctrl, kbnode_t keyblock) nkeys++; err = keygrip_from_pk (node->pkt->pkt.public_key, grip2, 1); - if (err && gpg_err_code (err) != GPG_ERR_FALSE) - return err; - if (!err) /* Add the second keygrip from dual algos. */ + if (err) + { + if (gpg_err_code (err) == GPG_ERR_FALSE) /* No second keygrip. */ + err = 0; + else + return err; + } + else /* Add the second keygrip from dual algos. */ { *p++ = ' '; bin2hex (grip2, 20, p);