mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-22 04:25:18 +00:00
qemu_process: Fix theoretical overflow in uint to bool typecast
The qemuPrepareNVRAM() function accepts three arguments and the last one being a boolean type. However, when the function is called from qemuProcessPrepareHost() the argument passed is a result of logical and of @flags (unsigned int) and VIR_QEMU_PROCESS_START_RESET_NVRAM value. In theory this is unsafe to do because if the value of the flag is ever changed then this expression might overflow. Do what we do elsewhere: double negation. Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
1b636593c7
commit
da393034c9
@ -6983,7 +6983,7 @@ qemuProcessPrepareHost(virQEMUDriver *driver,
|
||||
qemuProcessMakeDir(driver, vm, priv->channelTargetDir) < 0)
|
||||
return -1;
|
||||
|
||||
if (qemuPrepareNVRAM(driver, vm, flags & VIR_QEMU_PROCESS_START_RESET_NVRAM) < 0)
|
||||
if (qemuPrepareNVRAM(driver, vm, !!(flags & VIR_QEMU_PROCESS_START_RESET_NVRAM)) < 0)
|
||||
return -1;
|
||||
|
||||
if (vm->def->vsock) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user