]> xenbits.xensource.com Git - libvirt.git/commitdiff
networkStartNetworkVirtual: Don't leak macmap object
authorMichal Privoznik <mprivozn@redhat.com>
Mon, 13 Aug 2018 09:17:20 +0000 (11:17 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Mon, 13 Aug 2018 10:32:02 +0000 (12:32 +0200)
When starting network a macmap object is created (which stores
MAC -> domain name mappings). However, if something goes wrong
(e.g. virNetDevIPCheckIPv6Forwarding() fails) then the object is
leaked.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Erik Skultety <eskultet@redhat.com>
src/network/bridge_driver.c

index f92cc61e4777d1f282132a596bf6ccfe2e418756..588b0d147d397ed82f3208f78e55cd16f49bf653 100644 (file)
@@ -2453,6 +2453,7 @@ networkStartNetworkVirtual(virNetworkDriverStatePtr driver,
         goto err1;
 
     virNetworkObjSetMacMap(obj, macmap);
+    macmap = NULL;
 
     /* Set bridge options */
 
@@ -2590,6 +2591,7 @@ networkStartNetworkVirtual(virNetworkDriverStatePtr driver,
         ignore_value(virNetDevTapDelete(macTapIfName, NULL));
         VIR_FREE(macTapIfName);
     }
+    virNetworkObjUnrefMacMap(obj);
     VIR_FREE(macMapFile);
 
  err0: