[libvirt] [PATCH 5/6] Fix memory leak in securityselinuxlabeltest.c

Pavel Hrdina phrdina at redhat.com
Mon Jan 13 16:12:11 UTC 2014


Strings "file" and "context" may not be freed if "VIR_EXPAND_N" fails
and it leads into memory leak.

This has been found by coverity.

Signed-off-by: Pavel Hrdina <phrdina at redhat.com>
---
 tests/securityselinuxlabeltest.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/tests/securityselinuxlabeltest.c b/tests/securityselinuxlabeltest.c
index d1fd92f..08b2997 100644
--- a/tests/securityselinuxlabeltest.c
+++ b/tests/securityselinuxlabeltest.c
@@ -127,8 +127,11 @@ testSELinuxLoadFileList(const char *testname,
             context = NULL;
         }
 
-        if (VIR_EXPAND_N(*files, *nfiles, 1) < 0)
+        if (VIR_EXPAND_N(*files, *nfiles, 1) < 0) {
+            VIR_FREE(file);
+            VIR_FREE(context);
             goto cleanup;
+        }
 
         (*files)[(*nfiles)-1].file = file;
         (*files)[(*nfiles)-1].context = context;
-- 
1.8.3.1




More information about the libvir-list mailing list