aboutsummaryrefslogtreecommitdiffstats
path: root/sm/encrypt.c
diff options
context:
space:
mode:
authorJakub Jelen <[email protected]>2021-04-12 12:05:17 +0000
committerWerner Koch <[email protected]>2021-05-20 11:51:47 +0000
commite6132bc9f41727ea1abe2d6298610223c11639a2 (patch)
tree6d76b81dc687c9dd7627e5495dd1cf815ad3be09 /sm/encrypt.c
parentg10: Fix memory leaks (diff)
downloadgnupg-e6132bc9f41727ea1abe2d6298610223c11639a2.tar.gz
gnupg-e6132bc9f41727ea1abe2d6298610223c11639a2.zip
sm: Avoid memory leaks and double double-free
* sm/certcheck.c (extract_pss_params): Avoid double free * sm/decrypt.c (gpgsm_decrypt): goto leave instead of return * sm/encrypt.c (encrypt_dek): release s_pkey * sm/server.c (cmd_export): free list (do_listkeys): free lists -- Signed-off-by: Jakub Jelen <[email protected]> GnuPG-bug-id: 5393
Diffstat (limited to 'sm/encrypt.c')
-rw-r--r--sm/encrypt.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sm/encrypt.c b/sm/encrypt.c
index 92ca341f5..ba2428e9a 100644
--- a/sm/encrypt.c
+++ b/sm/encrypt.c
@@ -473,6 +473,7 @@ encrypt_dek (const DEK dek, ksba_cert_t cert, int pk_algo,
rc = encode_session_key (dek, &s_data);
if (rc)
{
+ gcry_sexp_release (s_pkey);
log_error ("encode_session_key failed: %s\n", gpg_strerror (rc));
return rc;
}