From: Jiri Denemark Date: Fri, 11 Apr 2014 09:24:51 +0000 (+0200) Subject: qemu: Avoid overflow when setting migration speed on inactive domains X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=dff3ad004acd2c8754a76553742cc5c18c77766c;p=libvirt.git qemu: Avoid overflow when setting migration speed on inactive domains Commit c4206d7 fixed the overflow for running domains. However, we need a similar check when setting migration speed on inactive domains. At first look, it may seem the check in c4206d7 is now redundant but qemuDomainMigrateSetMaxSpeed is not the only caller of qemuMonitorSetMigrationSpeed so we need to check the bandwidth in both places. https://bugzilla.redhat.com/show_bug.cgi?id=1083483 Signed-off-by: Jiri Denemark --- diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 67ba48734a..69a7053c05 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -11927,6 +11927,13 @@ qemuDomainMigrateSetMaxSpeed(virDomainPtr dom, if (virDomainMigrateSetMaxSpeedEnsureACL(dom->conn, vm->def) < 0) goto cleanup; + if (bandwidth > QEMU_DOMAIN_MIG_BANDWIDTH_MAX) { + virReportError(VIR_ERR_OVERFLOW, + _("bandwidth must be less than %llu"), + QEMU_DOMAIN_MIG_BANDWIDTH_MAX + 1ULL); + goto cleanup; + } + if (virDomainObjIsActive(vm)) { if (qemuDomainObjBeginJob(driver, vm, QEMU_JOB_MIGRATION_OP) < 0) goto cleanup;