aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2025-07-17 07:13:41 +0000
committerWerner Koch <[email protected]>2025-07-17 07:13:41 +0000
commit4ae81d9c44ebb47f654cc4b03ce5a5706d8dd4a6 (patch)
treeb56aca85fa85242a1843f1a256bd6a7bd59fb02a
parentagent: Fix for smartcard decryption returning x-coordinate only. (diff)
downloadgnupg-4ae81d9c44ebb47f654cc4b03ce5a5706d8dd4a6.tar.gz
gnupg-4ae81d9c44ebb47f654cc4b03ce5a5706d8dd4a6.zip
agent: Minor robustness improvementHEADmaster
* agent/divert-scd.c (agent_card_ecc_kem): Add extra robustness check for len==0.
-rw-r--r--agent/divert-scd.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/agent/divert-scd.c b/agent/divert-scd.c
index 7e0d8eccb..15d1abd8d 100644
--- a/agent/divert-scd.c
+++ b/agent/divert-scd.c
@@ -517,7 +517,7 @@ agent_card_ecc_kem (ctrl_t ctrl, const unsigned char *ecc_ct,
if (len == ecc_point_len)
memcpy (ecc_ecdh, ecdh, len);
- else if ((len - 1) * 2 == ecc_point_len - 1 && ecdh[0] == 0x02)
+ else if (len && (len - 1) * 2 == ecc_point_len - 1 && ecdh[0] == 0x02)
{
/* It's x-coordinate-only (compressed) point representation. */
memcpy (ecc_ecdh, ecdh, len);