85acb2b527
This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/libsemanage.git#e91e91b5b3c2ca890a4eb605569ec6a82b028d76
67 lines
1.5 KiB
Diff
67 lines
1.5 KiB
Diff
From fc966a746653cc15a14d1e1a80f01fc2f567ee08 Mon Sep 17 00:00:00 2001
|
|
From: Petr Lautrbach <plautrba@redhat.com>
|
|
Date: Wed, 7 Nov 2018 18:17:34 +0100
|
|
Subject: [PATCH] libsemanage: Fix RESOURCE_LEAK and USE_AFTER_FREE coverity
|
|
scan defects
|
|
|
|
---
|
|
libsemanage/src/direct_api.c | 21 ++++++++-------------
|
|
1 file changed, 8 insertions(+), 13 deletions(-)
|
|
|
|
diff --git a/libsemanage/src/direct_api.c b/libsemanage/src/direct_api.c
|
|
index d2b91fb24292..f445cd4d6fb5 100644
|
|
--- a/libsemanage/src/direct_api.c
|
|
+++ b/libsemanage/src/direct_api.c
|
|
@@ -1028,7 +1028,7 @@ static int semanage_direct_write_langext(semanage_handle_t *sh,
|
|
|
|
fp = NULL;
|
|
|
|
- ret = 0;
|
|
+ return 0;
|
|
|
|
cleanup:
|
|
if (fp != NULL) fclose(fp);
|
|
@@ -2184,7 +2184,6 @@ cleanup:
|
|
semanage_module_info_destroy(sh, modinfo);
|
|
free(modinfo);
|
|
|
|
- if (fp != NULL) fclose(fp);
|
|
return status;
|
|
}
|
|
|
|
@@ -2349,16 +2348,6 @@ static int semanage_direct_get_module_info(semanage_handle_t *sh,
|
|
free(tmp);
|
|
tmp = NULL;
|
|
|
|
- if (fclose(fp) != 0) {
|
|
- ERR(sh,
|
|
- "Unable to close %s module lang ext file.",
|
|
- (*modinfo)->name);
|
|
- status = -1;
|
|
- goto cleanup;
|
|
- }
|
|
-
|
|
- fp = NULL;
|
|
-
|
|
/* lookup enabled/disabled status */
|
|
ret = semanage_module_get_path(sh,
|
|
*modinfo,
|
|
@@ -2402,7 +2391,13 @@ cleanup:
|
|
free(modinfos);
|
|
}
|
|
|
|
- if (fp != NULL) fclose(fp);
|
|
+ if (fp != NULL && fclose(fp) != 0) {
|
|
+ ERR(sh,
|
|
+ "Unable to close %s module lang ext file.",
|
|
+ (*modinfo)->name);
|
|
+ status = -1;
|
|
+ }
|
|
+
|
|
return status;
|
|
}
|
|
|
|
--
|
|
2.29.0
|
|
|