1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-03-07 17:28:15 +00:00

conf: Use virTristateXXX in virDomainDeviceInfo

Note that the wrong "VIR_TRISTATE_*_ABSENT" was used in qemuDomainChangeNet.

Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
Tim Wiederhake 2021-04-07 13:48:30 +02:00 committed by Peter Krempa
parent e949edeec8
commit 5cbc83774a
4 changed files with 21 additions and 14 deletions

View File

@ -143,8 +143,8 @@ struct _virDomainDeviceInfo {
} master; } master;
/* rombar and romfile are only used for pci hostdev and network /* rombar and romfile are only used for pci hostdev and network
* devices. */ * devices. */
int romenabled; /* enum virTristateBool */ virTristateBool romenabled;
int rombar; /* enum virTristateSwitch */ virTristateSwitch rombar;
char *romfile; char *romfile;
/* bootIndex is only used for disk, network interface, hostdev /* bootIndex is only used for disk, network interface, hostdev
* and redirdev devices */ * and redirdev devices */

View File

@ -6691,17 +6691,23 @@ virDomainDeviceInfoParseXML(virDomainXMLOption *xmlopt,
if ((flags & VIR_DOMAIN_DEF_PARSE_ALLOW_ROM) && if ((flags & VIR_DOMAIN_DEF_PARSE_ALLOW_ROM) &&
(rom = virXPathNode("./rom", ctxt))) { (rom = virXPathNode("./rom", ctxt))) {
if ((romenabled = virXPathString("string(./rom/@enabled)", ctxt)) && if ((romenabled = virXPathString("string(./rom/@enabled)", ctxt))) {
((info->romenabled = virTristateBoolTypeFromString(romenabled)) <= 0)) { int value;
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, if ((value = virTristateBoolTypeFromString(romenabled)) <= 0) {
_("unknown rom enabled value '%s'"), romenabled); virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
goto cleanup; _("unknown rom enabled value '%s'"), romenabled);
goto cleanup;
}
info->romenabled = value;
} }
if ((rombar = virXPathString("string(./rom/@bar)", ctxt)) && if ((rombar = virXPathString("string(./rom/@bar)", ctxt))) {
((info->rombar = virTristateSwitchTypeFromString(rombar)) <= 0)) { int value;
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, if ((value = virTristateSwitchTypeFromString(rombar)) <= 0) {
_("unknown rom bar value '%s'"), rombar); virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
goto cleanup; _("unknown rom bar value '%s'"), rombar);
goto cleanup;
}
info->rombar = value;
} }
info->romfile = virXMLPropString(rom, "file"); info->romfile = virXMLPropString(rom, "file");

View File

@ -713,7 +713,8 @@ qemuBuildRomStr(virBuffer *buf,
case VIR_TRISTATE_SWITCH_ON: case VIR_TRISTATE_SWITCH_ON:
virBufferAddLit(buf, ",rombar=1"); virBufferAddLit(buf, ",rombar=1");
break; break;
default: case VIR_TRISTATE_SWITCH_ABSENT:
case VIR_TRISTATE_SWITCH_LAST:
break; break;
} }
if (info->romfile) { if (info->romfile) {

View File

@ -3653,7 +3653,7 @@ qemuDomainChangeNet(virQEMUDriver *driver,
/* device alias is checked already in virDomainDefCompatibleDevice */ /* device alias is checked already in virDomainDefCompatibleDevice */
if (newdev->info.rombar == VIR_TRISTATE_BOOL_ABSENT) if (newdev->info.rombar == VIR_TRISTATE_SWITCH_ABSENT)
newdev->info.rombar = olddev->info.rombar; newdev->info.rombar = olddev->info.rombar;
if (olddev->info.rombar != newdev->info.rombar) { if (olddev->info.rombar != newdev->info.rombar) {
virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",