From d4f3ba7c50e24775fad07a79aee13479e40fe7fe Mon Sep 17 00:00:00 2001 From: Yuli Khodorkovskiy Date: Thu, 6 Aug 2015 10:30:13 -0400 Subject: [PATCH] libsemanage: Fix null pointer dereference in semanage_module_key_destroy If modkey is NULL, semanage_module_key_destroy() would still try to initialize a modkey after freeing it. Signed-off-by: Yuli Khodorkovskiy Signed-off-by: James Carter --- libsemanage/src/modules.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libsemanage/src/modules.c b/libsemanage/src/modules.c index 131f502477..90c5e4917f 100644 --- a/libsemanage/src/modules.c +++ b/libsemanage/src/modules.c @@ -690,10 +690,12 @@ int semanage_module_key_destroy(semanage_handle_t *sh, { assert(sh); - if (modkey) { - free(modkey->name); + if (!modkey) { + return 0; } + free(modkey->name); + return semanage_module_key_init(sh, modkey); }