[PATCH 03/19] virSecuritySELinuxMCSFind: Refactor variable clearing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Peter Krempa <pkrempa@xxxxxxxxxx>

Use automatic freeing for 'mcs' and adjust the code.

Signed-off-by: Peter Krempa <pkrempa@xxxxxxxxxx>
---
 src/security/security_selinux.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/security/security_selinux.c b/src/security/security_selinux.c
index 0326073810..28ac136635 100644
--- a/src/security/security_selinux.c
+++ b/src/security/security_selinux.c
@@ -398,7 +398,6 @@ virSecuritySELinuxMCSFind(virSecurityManager *mgr,
 {
     virSecuritySELinuxData *data = virSecurityManagerGetPrivateData(mgr);
     int catRange;
-    char *mcs = NULL;

     /* +1 since virRandomInt range is exclusive of the upper bound */
     catRange = (catMax - catMin) + 1;
@@ -416,6 +415,7 @@ virSecuritySELinuxMCSFind(virSecurityManager *mgr,
     for (;;) {
         int c1 = virRandomInt(catRange);
         int c2 = virRandomInt(catRange);
+        g_autofree char *mcs = NULL;

         VIR_DEBUG("Try cat %s:c%d,c%d", sens, c1 + catMin, c2 + catMin);

@@ -439,12 +439,10 @@ virSecuritySELinuxMCSFind(virSecurityManager *mgr,
         }

         if (virHashLookup(data->mcs, mcs) == NULL)
-            break;
-
-        VIR_FREE(mcs);
+            return g_steal_pointer(&mcs);
     }

-    return mcs;
+    return NULL;
 }


-- 
2.50.0




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux