From: Michal Privoznik Date: Tue, 23 Apr 2019 14:59:55 +0000 (+0200) Subject: networkStartNetworkVirtual: Dissolve 'err2' label in 'error' X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=90ab480cab303241703171978e4d2d8dca41598b;p=libvirt.git networkStartNetworkVirtual: Dissolve 'err2' label in 'error' Signed-off-by: Michal Privoznik Reviewed-by: Erik Skultety --- diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c index cd59039bdb..4c920d1fdd 100644 --- a/src/network/bridge_driver.c +++ b/src/network/bridge_driver.c @@ -2337,6 +2337,7 @@ networkStartNetworkVirtual(virNetworkDriverStatePtr driver, int tapfd = -1; bool dnsmasqStarted = false; bool devOnline = false; + bool firewalRulesAdded = false; /* Check to see if any network IP collides with an existing route */ if (networkCheckRouteCollision(def) < 0) @@ -2413,6 +2414,8 @@ networkStartNetworkVirtual(virNetworkDriverStatePtr driver, networkAddFirewallRules(def) < 0) goto err1; + firewalRulesAdded = true; + for (i = 0; (ipdef = virNetworkDefGetIPByIndex(def, AF_UNSPEC, i)); i++) { if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET)) v4present = true; @@ -2421,15 +2424,15 @@ networkStartNetworkVirtual(virNetworkDriverStatePtr driver, /* Add the IP address/netmask to the bridge */ if (networkAddAddrToBridge(obj, ipdef) < 0) - goto err2; + goto error; } if (networkStartHandleMACTableManagerMode(obj, macTapIfName) < 0) - goto err2; + goto error; /* Bring up the bridge interface */ if (virNetDevSetOnline(def->bridge, 1) < 0) - goto err2; + goto error; devOnline = true; @@ -2511,10 +2514,8 @@ networkStartNetworkVirtual(virNetworkDriverStatePtr driver, if (devOnline) ignore_value(virNetDevSetOnline(def->bridge, 0)); - err2: - if (!save_err) - virErrorPreserveLast(&save_err); - if (def->forward.type != VIR_NETWORK_FORWARD_OPEN) + if (firewalRulesAdded && + def->forward.type != VIR_NETWORK_FORWARD_OPEN) networkRemoveFirewallRules(def); err1: