aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2025-03-13 10:35:34 +0000
committerWerner Koch <[email protected]>2025-03-13 10:36:52 +0000
commitc1b965cd92206ba75d6bcc9a1e95b6e500433949 (patch)
treea50c9e57de99e2ef0b42854b56687035a3d00887
parentcommon: Add a flag for left anchored substring match to recsel. (diff)
downloadgnupg-c1b965cd92206ba75d6bcc9a1e95b6e500433949.tar.gz
gnupg-c1b965cd92206ba75d6bcc9a1e95b6e500433949.zip
gpg: Fix double free of internal data.
* g10/sig-check.c (check_signature_over_key_or_uid): Do not free in no-sig-cache mode if allocated by caller. -- GnuPG-bug-id: 7547 Fixes-commit: 44cdb9d73f1a0b7d2c8483a119b9c4d6caabc1ec
-rw-r--r--g10/sig-check.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/g10/sig-check.c b/g10/sig-check.c
index 42eebcda8..e09be3d75 100644
--- a/g10/sig-check.c
+++ b/g10/sig-check.c
@@ -1007,7 +1007,8 @@ check_signature_over_key_or_uid (ctrl_t ctrl, PKT_public_key *signer,
rc = get_pubkey_for_sig (ctrl, signer, sig, NULL, NULL);
if (rc)
{
- xfree (signer);
+ if (signer_alloced != 1)
+ xfree (signer);
signer = NULL;
signer_alloced = 0;
goto leave;