From 0aac99f8e13dfc74b87986908165ae7f44662153 Mon Sep 17 00:00:00 2001 From: Daniel P. Berrange Date: Mon, 6 Jul 2009 16:01:55 +0100 Subject: [PATCH] Fix SELinux denial during hotplug * src/qemu_driver.c: Relabel disk images *before* running QEMU hotplug monitor commands (cherry picked from commit 1795bfe4a177a5eff1b3b0a16d56df6f371c0f8e) Fedora-patch: libvirt-0.6.2-hotplug-labelling.patch --- src/qemu_driver.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/qemu_driver.c b/src/qemu_driver.c index 5fc21a1..f3661f8 100644 --- a/src/qemu_driver.c +++ b/src/qemu_driver.c @@ -3934,10 +3934,14 @@ static int qemudDomainAttachDevice(virDomainPtr dom, switch (dev->data.disk->device) { case VIR_DOMAIN_DISK_DEVICE_CDROM: case VIR_DOMAIN_DISK_DEVICE_FLOPPY: + if (driver->securityDriver) + driver->securityDriver->domainSetSecurityImageLabel(dom->conn, vm, dev->data.disk); ret = qemudDomainChangeEjectableMedia(dom->conn, vm, dev); break; case VIR_DOMAIN_DISK_DEVICE_DISK: + if (driver->securityDriver) + driver->securityDriver->domainSetSecurityImageLabel(dom->conn, vm, dev->data.disk); if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_USB) { ret = qemudDomainAttachUsbMassstorageDevice(dom->conn, vm, dev); } else if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_SCSI || @@ -3949,8 +3953,6 @@ static int qemudDomainAttachDevice(virDomainPtr dom, virDomainDiskBusTypeToString(dev->data.disk->bus)); goto cleanup; } - if (driver->securityDriver) - driver->securityDriver->domainSetSecurityImageLabel(dom->conn, vm, dev->data.disk); break; default: -- 1.6.2.5