qemu: check if block I/O limits fit into long long

We can only pass values up to LLONG_MAX through JSON
and QEMU checks if the int64_t number is not negative
at startup since 1.5.0.

https://bugzilla.redhat.com/show_bug.cgi?id=974010
This commit is contained in:
Ján Tomko 2013-06-24 14:18:14 +02:00
parent 7a99eb912f
commit d3c8788492

View File

@ -14099,6 +14099,13 @@ qemuDomainSetBlockIoTune(virDomainPtr dom,
for (i = 0; i < nparams; i++) {
virTypedParameterPtr param = &params[i];
if (param->value.ul > LLONG_MAX) {
virReportError(VIR_ERR_OVERFLOW,
_("block I/O throttle limit value must"
" be less than %llu"), LLONG_MAX);
goto endjob;
}
if (STREQ(param->field, VIR_DOMAIN_BLOCK_IOTUNE_TOTAL_BYTES_SEC)) {
info.total_bytes_sec = param->value.ul;
set_bytes = true;