From: Peter Krempa Date: Fri, 16 Sep 2022 12:53:32 +0000 (+0200) Subject: virDomainNetDefParseXML: Refactor parsing of data for VIR_DOMAIN_NET_TYPE_BRIDGE X-Git-Tag: v8.9.0-rc1~165 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=61faa9854691af97fafe80d2855a7440cdf706e2;p=thirdparty%2Flibvirt.git virDomainNetDefParseXML: Refactor parsing of data for VIR_DOMAIN_NET_TYPE_BRIDGE Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 1a39e00c1f..873fb2f644 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -8990,7 +8990,6 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt, virDomainChrSourceReconnectDef reconnect = {0}; int rv, val; g_autofree char *macaddr = NULL; - g_autofree char *bridge = NULL; g_autofree char *dev = NULL; g_autofree char *managed_tap = NULL; g_autofree char *address = NULL; @@ -9083,9 +9082,11 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt, break; case VIR_DOMAIN_NET_TYPE_BRIDGE: - if (source_node) { - bridge = virXMLPropString(source_node, "bridge"); - } + if (virDomainNetDefParseXMLRequireSource(def, source_node) < 0) + return NULL; + + if (!(def->data.bridge.brname = virXMLPropStringRequired(source_node, "bridge"))) + return NULL; break; case VIR_DOMAIN_NET_TYPE_DIRECT: @@ -9334,13 +9335,6 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt, break; case VIR_DOMAIN_NET_TYPE_BRIDGE: - if (bridge == NULL) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("No 'bridge' attribute " - "specified with ")); - return NULL; - } - def->data.bridge.brname = g_steal_pointer(&bridge); break; case VIR_DOMAIN_NET_TYPE_CLIENT: