[libvirt] [PATCH] Report all errors in SELinuxRestoreSecurityFileLabel

jdenemar at redhat.com jdenemar at redhat.com
Fri Apr 30 11:50:10 UTC 2010


From: Jiri Denemark <jdenemar at redhat.com>

---
 src/security/security_selinux.c |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/src/security/security_selinux.c b/src/security/security_selinux.c
index 3e20475..1aabb20 100644
--- a/src/security/security_selinux.c
+++ b/src/security/security_selinux.c
@@ -364,12 +364,20 @@ SELinuxRestoreSecurityFileLabel(const char *path)
         goto err;
     }
 
-    if (stat(newpath, &buf) != 0)
+    if (stat(newpath, &buf) != 0) {
+        virReportSystemError(errno,
+                             _("cannot stat %s"), newpath);
         goto err;
+    }
 
     if (matchpathcon(newpath, buf.st_mode, &fcon) == 0)  {
         rc = SELinuxSetFilecon(newpath, fcon);
+    } else {
+        virSecurityReportError(VIR_ERR_INTERNAL_ERROR,
+                               _("cannot restore selinux file label for %s"),
+                               newpath);
     }
+
 err:
     VIR_FREE(fcon);
     VIR_FREE(newpath);
-- 
1.7.0.4




More information about the libvir-list mailing list