Blame SOURCES/0043-semodule-Don-t-forget-to-munmap-data.patch

e0b08f
From 61f05b6d26063e1ebdc06609c29a067d44579b41 Mon Sep 17 00:00:00 2001
e0b08f
From: Petr Lautrbach <plautrba@redhat.com>
e0b08f
Date: Tue, 23 Nov 2021 17:38:51 +0100
e0b08f
Subject: [PATCH] semodule: Don't forget to munmap() data
e0b08f
e0b08f
semanage_module_extract() mmap()'s the module raw data but it leaves on
e0b08f
the caller to munmap() them.
e0b08f
e0b08f
Reported-by: Ondrej Mosnacek <omosnace@redhat.com>
e0b08f
Signed-off-by: Petr Lautrbach <plautrba@redhat.com>
e0b08f
Acked-by: James Carter <jwcart2@gmail.com>
e0b08f
---
e0b08f
 policycoreutils/semodule/semodule.c | 3 +++
e0b08f
 1 file changed, 3 insertions(+)
e0b08f
e0b08f
diff --git a/policycoreutils/semodule/semodule.c b/policycoreutils/semodule/semodule.c
e0b08f
index c677cc4f1d81..dc227058b073 100644
e0b08f
--- a/policycoreutils/semodule/semodule.c
e0b08f
+++ b/policycoreutils/semodule/semodule.c
e0b08f
@@ -393,6 +393,9 @@ static char *hash_module_data(const char *module_name, const int prio) {
e0b08f
 	sha256_buf[i * 2] = 0;
e0b08f
 
e0b08f
 cleanup_extract:
e0b08f
+	if (data_len > 0) {
e0b08f
+		munmap(data, data_len);
e0b08f
+	}
e0b08f
 	semanage_module_info_destroy(sh, extract_info);
e0b08f
 	free(extract_info);
e0b08f
 	semanage_module_key_destroy(sh, modkey);
e0b08f
-- 
e0b08f
2.33.1
e0b08f