mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
Fix SELinux denial during hotplug
* src/qemu_driver.c: Relabel disk images *before* running QEMU hotplug monitor commands
This commit is contained in:
parent
326ecb7814
commit
1795bfe4a1
@ -4225,10 +4225,14 @@ static int qemudDomainAttachDevice(virDomainPtr dom,
|
|||||||
switch (dev->data.disk->device) {
|
switch (dev->data.disk->device) {
|
||||||
case VIR_DOMAIN_DISK_DEVICE_CDROM:
|
case VIR_DOMAIN_DISK_DEVICE_CDROM:
|
||||||
case VIR_DOMAIN_DISK_DEVICE_FLOPPY:
|
case VIR_DOMAIN_DISK_DEVICE_FLOPPY:
|
||||||
|
if (driver->securityDriver)
|
||||||
|
driver->securityDriver->domainSetSecurityImageLabel(dom->conn, vm, dev->data.disk);
|
||||||
ret = qemudDomainChangeEjectableMedia(dom->conn, vm, dev);
|
ret = qemudDomainChangeEjectableMedia(dom->conn, vm, dev);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_DOMAIN_DISK_DEVICE_DISK:
|
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) {
|
if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_USB) {
|
||||||
ret = qemudDomainAttachUsbMassstorageDevice(dom->conn, vm, dev);
|
ret = qemudDomainAttachUsbMassstorageDevice(dom->conn, vm, dev);
|
||||||
} else if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_SCSI ||
|
} else if (dev->data.disk->bus == VIR_DOMAIN_DISK_BUS_SCSI ||
|
||||||
@ -4240,8 +4244,6 @@ static int qemudDomainAttachDevice(virDomainPtr dom,
|
|||||||
virDomainDiskBusTypeToString(dev->data.disk->bus));
|
virDomainDiskBusTypeToString(dev->data.disk->bus));
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
if (driver->securityDriver)
|
|
||||||
driver->securityDriver->domainSetSecurityImageLabel(dom->conn, vm, dev->data.disk);
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user