From 6a8f88ea998b85bbb3b0dc48b876adf06c19d711 Mon Sep 17 00:00:00 2001 From: Milan Broz Date: Thu, 16 Jan 2025 21:27:43 +0100 Subject: [PATCH] Fix leaks detected by Coverity. --- lib/luks2/luks2_reencrypt.c | 2 ++ lib/setup.c | 6 ++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/luks2/luks2_reencrypt.c b/lib/luks2/luks2_reencrypt.c index b450cc5e..302856e6 100644 --- a/lib/luks2/luks2_reencrypt.c +++ b/lib/luks2/luks2_reencrypt.c @@ -2913,6 +2913,8 @@ static int reencrypt_decrypt_with_datashift_init(struct crypt_device *cd, jobj_segments_old = reencrypt_segments_old(hdr); if (!jobj_segments_old) { + dm_targets_free(cd, &dmd_target); + free(CONST_CAST(void*)dmd_target.uuid); r = -EINVAL; goto out; } diff --git a/lib/setup.c b/lib/setup.c index 6c98849b..b8991b84 100644 --- a/lib/setup.c +++ b/lib/setup.c @@ -3497,8 +3497,10 @@ static int _reload_device_with_integrity(struct crypt_device *cd, } /* unsupported underneath dm-crypt with auth. encryption */ - if (sdmdi->segment.u.integrity.meta_device || tdmdi.segment.u.integrity.meta_device) - return -ENOTSUP; + if (sdmdi->segment.u.integrity.meta_device || tdmdi.segment.u.integrity.meta_device) { + r = -ENOTSUP; + goto out; + } src = &sdmd->segment; srci = &sdmdi->segment;