From: Michal Privoznik Date: Tue, 2 May 2023 11:45:44 +0000 (+0200) Subject: virDomainWatchdogDef: Convert 'action' field to proper enum type X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=cc4bb25852c39d38fa20c11f54ef9c82a81b6826;p=libvirt.git virDomainWatchdogDef: Convert 'action' field to proper enum type Convert the field and adjust the XML parser to use virXMLPropEnumDefault(). Signed-off-by: Michal Privoznik Reviewed-by: Ján Tomko --- diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 5c1712cb46..f48020f893 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -12065,7 +12065,6 @@ virDomainWatchdogDefParseXML(virDomainXMLOption *xmlopt, unsigned int flags) { virDomainWatchdogDef *def; - g_autofree char *action = NULL; def = g_new0(virDomainWatchdogDef, 1); @@ -12076,16 +12075,12 @@ virDomainWatchdogDefParseXML(virDomainXMLOption *xmlopt, goto error; } - action = virXMLPropString(node, "action"); - if (action == NULL) { - def->action = VIR_DOMAIN_WATCHDOG_ACTION_RESET; - } else { - def->action = virDomainWatchdogActionTypeFromString(action); - if (def->action < 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, - _("unknown watchdog action '%1$s'"), action); - goto error; - } + if (virXMLPropEnumDefault(node, "action", + virDomainWatchdogActionTypeFromString, + VIR_XML_PROP_NONE, + &def->action, + VIR_DOMAIN_WATCHDOG_ACTION_RESET) < 0) { + goto error; } if (virDomainDeviceInfoParseXML(xmlopt, node, ctxt, &def->info, flags) < 0) diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index e7c663b0e9..77e5b26957 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -1760,7 +1760,7 @@ typedef enum { struct _virDomainWatchdogDef { virDomainWatchdogModel model; - int action; + virDomainWatchdogAction action; virDomainDeviceInfo info; };