mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 19:32:19 +00:00
qemu_hotplug: audit *all* auditable device types in qemuDomainRemoveAuditDevice
Although all hotpluggable devices other than lease, controller, watchdof, and vsock can be audited, and *are* audited when an unplug is successful, only disk, net, and hostdev were actually being audited on failure. This patch corrects that omission. Signed-off-by: Laine Stump <laine@laine.org> ACKed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
parent
b914e0eca3
commit
444c5e7c43
@ -5203,19 +5203,28 @@ qemuDomainRemoveAuditDevice(virDomainObjPtr vm,
|
|||||||
case VIR_DOMAIN_DEVICE_HOSTDEV:
|
case VIR_DOMAIN_DEVICE_HOSTDEV:
|
||||||
virDomainAuditHostdev(vm, detach->data.hostdev, "detach", success);
|
virDomainAuditHostdev(vm, detach->data.hostdev, "detach", success);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_DOMAIN_DEVICE_INPUT:
|
case VIR_DOMAIN_DEVICE_INPUT:
|
||||||
|
virDomainAuditInput(vm, detach->data.input, "detach", success);
|
||||||
|
break;
|
||||||
case VIR_DOMAIN_DEVICE_CHR:
|
case VIR_DOMAIN_DEVICE_CHR:
|
||||||
|
virDomainAuditChardev(vm, detach->data.chr, NULL, "detach", success);
|
||||||
|
break;
|
||||||
case VIR_DOMAIN_DEVICE_RNG:
|
case VIR_DOMAIN_DEVICE_RNG:
|
||||||
case VIR_DOMAIN_DEVICE_MEMORY:
|
virDomainAuditRNG(vm, detach->data.rng, NULL, "detach", success);
|
||||||
case VIR_DOMAIN_DEVICE_SHMEM:
|
break;
|
||||||
case VIR_DOMAIN_DEVICE_REDIRDEV:
|
case VIR_DOMAIN_DEVICE_MEMORY: {
|
||||||
/*
|
unsigned long long oldmem = virDomainDefGetMemoryTotal(vm->def);
|
||||||
* These devices are supposed to be audited, but current code
|
unsigned long long newmem = oldmem - detach->data.memory->size;
|
||||||
* doesn't audit on failure to remove the device.
|
|
||||||
*/
|
|
||||||
break;
|
|
||||||
|
|
||||||
|
virDomainAuditMemory(vm, oldmem, newmem, "update", success);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case VIR_DOMAIN_DEVICE_SHMEM:
|
||||||
|
virDomainAuditShmem(vm, detach->data.shmem, "detach", success);
|
||||||
|
break;
|
||||||
|
case VIR_DOMAIN_DEVICE_REDIRDEV:
|
||||||
|
virDomainAuditRedirdev(vm, detach->data.redirdev, "detach", success);
|
||||||
|
break;
|
||||||
|
|
||||||
case VIR_DOMAIN_DEVICE_LEASE:
|
case VIR_DOMAIN_DEVICE_LEASE:
|
||||||
case VIR_DOMAIN_DEVICE_CONTROLLER:
|
case VIR_DOMAIN_DEVICE_CONTROLLER:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user