[libvirt] [PATCH] security: selinux: Fix crash when releasing non-existent label

Cole Robinson crobinso at redhat.com
Mon Mar 22 14:48:32 UTC 2010


This can be triggered by the qemuStartVMDaemon cleanup path if a
VM references a non-existent USB device (by product) in the XML.

Signed-off-by: Cole Robinson <crobinso at redhat.com>
---
 src/security/security_selinux.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/security/security_selinux.c b/src/security/security_selinux.c
index 975b315..6680e2d 100644
--- a/src/security/security_selinux.c
+++ b/src/security/security_selinux.c
@@ -632,7 +632,8 @@ SELinuxReleaseSecurityLabel(virDomainObjPtr vm)
 {
     const virSecurityLabelDefPtr secdef = &vm->def->seclabel;
 
-    if (secdef->type == VIR_DOMAIN_SECLABEL_STATIC)
+    if (secdef->type == VIR_DOMAIN_SECLABEL_STATIC ||
+        secdef->label == NULL)
         return 0;
 
     context_t con = context_new(secdef->label);
-- 
1.6.6.1




More information about the libvir-list mailing list