1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-12-22 10:19:57 +01:00

gpg: Do not bail out on secret keys with an unknown algo

* g10/getkey.c (lookup): Skip keys with unknown algos.
--

If the local store has private keys with an algorithm not supported by
thi version of gpg, gpg used to bail out.  Thus decryption of proper
messages was not possible.  This fix skips such secret keys.
This commit is contained in:
Werner Koch 2024-06-11 12:41:51 +02:00
parent 640c58135e
commit d81bb417c0
No known key found for this signature in database
GPG Key ID: E3FDFF218E45B72B

View File

@ -4027,6 +4027,8 @@ lookup (ctrl_t ctrl, getkey_ctx_t ctx, int want_secret,
rc = agent_probe_any_secret_key (ctrl, keyblock); rc = agent_probe_any_secret_key (ctrl, keyblock);
if (gpg_err_code(rc) == GPG_ERR_NO_SECKEY) if (gpg_err_code(rc) == GPG_ERR_NO_SECKEY)
goto skip; /* No secret key available. */ goto skip; /* No secret key available. */
if (gpg_err_code (rc) == GPG_ERR_PUBKEY_ALGO)
goto skip; /* Not implemented algo - skip. */
if (rc) if (rc)
goto found; /* Unexpected error. */ goto found; /* Unexpected error. */
} }