From 59802f23bccdcf454aae2b4482467a9810ca1096 Mon Sep 17 00:00:00 2001 From: John Ferlan Date: Tue, 30 Sep 2014 06:55:23 -0400 Subject: [PATCH] hotplug: Resolve Coverity FORWARD_NULL Coverity complained that because the cfg->macFilter call checked net->ifname != NULL before calling ebtablesRemoveForwardAllowIn, then the virNetDevOpenvswitchRemovePort call should have the same check. However, if I move the ebtables call prior to the check for TYPE_DIRECT (where there is a VIR_FREE(net->ifname)), then it seems Coverity is happy. Since firewall info is tacked on last during setup, removing it in the opposite order of initialization seems to be natural anyway --- src/qemu/qemu_hotplug.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c index f2740f46f3..ff0eaf8016 100644 --- a/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c @@ -2786,6 +2786,12 @@ qemuDomainRemoveNetDevice(virQEMUDriverPtr driver, qemuDomainReleaseDeviceAddress(vm, &net->info, NULL); virDomainConfNWFilterTeardown(net); + if (cfg->macFilter && (net->ifname != NULL)) { + ignore_value(ebtablesRemoveForwardAllowIn(driver->ebtables, + net->ifname, + &net->mac)); + } + if (virDomainNetGetActualType(net) == VIR_DOMAIN_NET_TYPE_DIRECT) { ignore_value(virNetDevMacVLanDeleteWithVPortProfile( net->ifname, &net->mac, @@ -2796,12 +2802,6 @@ qemuDomainRemoveNetDevice(virQEMUDriverPtr driver, VIR_FREE(net->ifname); } - if (cfg->macFilter && (net->ifname != NULL)) { - ignore_value(ebtablesRemoveForwardAllowIn(driver->ebtables, - net->ifname, - &net->mac)); - } - vport = virDomainNetGetActualVirtPortProfile(net); if (vport && vport->virtPortType == VIR_NETDEV_VPORT_PROFILE_OPENVSWITCH) ignore_value(virNetDevOpenvswitchRemovePort(