conf: new function virDomainNetDefClear

We need to clear these out without freeing the object completely.
This commit is contained in:
Laine Stump 2016-06-21 14:22:15 -04:00
parent 70a2c7e062
commit 7cfbaad189
3 changed files with 15 additions and 1 deletions

View File

@ -1737,7 +1737,8 @@ virDomainActualNetDefFree(virDomainActualNetDefPtr def)
VIR_FREE(def); VIR_FREE(def);
} }
void virDomainNetDefFree(virDomainNetDefPtr def) void
virDomainNetDefClear(virDomainNetDefPtr def)
{ {
size_t i; size_t i;
@ -1753,6 +1754,7 @@ void virDomainNetDefFree(virDomainNetDefPtr def)
case VIR_DOMAIN_NET_TYPE_VHOSTUSER: case VIR_DOMAIN_NET_TYPE_VHOSTUSER:
virDomainChrSourceDefFree(def->data.vhostuser); virDomainChrSourceDefFree(def->data.vhostuser);
def->data.vhostuser = NULL;
break; break;
case VIR_DOMAIN_NET_TYPE_SERVER: case VIR_DOMAIN_NET_TYPE_SERVER:
@ -1767,6 +1769,7 @@ void virDomainNetDefFree(virDomainNetDefPtr def)
VIR_FREE(def->data.network.name); VIR_FREE(def->data.network.name);
VIR_FREE(def->data.network.portgroup); VIR_FREE(def->data.network.portgroup);
virDomainActualNetDefFree(def->data.network.actual); virDomainActualNetDefFree(def->data.network.actual);
def->data.network.actual = NULL;
break; break;
case VIR_DOMAIN_NET_TYPE_BRIDGE: case VIR_DOMAIN_NET_TYPE_BRIDGE:
@ -1811,10 +1814,19 @@ void virDomainNetDefFree(virDomainNetDefPtr def)
VIR_FREE(def->filter); VIR_FREE(def->filter);
virNWFilterHashTableFree(def->filterparams); virNWFilterHashTableFree(def->filterparams);
def->filterparams = NULL;
virNetDevBandwidthFree(def->bandwidth); virNetDevBandwidthFree(def->bandwidth);
def->bandwidth = NULL;
virNetDevVlanClear(&def->vlan); virNetDevVlanClear(&def->vlan);
}
void
virDomainNetDefFree(virDomainNetDefPtr def)
{
if (!def)
return;
virDomainNetDefClear(def);
VIR_FREE(def); VIR_FREE(def);
} }

View File

@ -2492,6 +2492,7 @@ virDomainControllerDefPtr
virDomainControllerDefNew(virDomainControllerType type); virDomainControllerDefNew(virDomainControllerType type);
void virDomainFSDefFree(virDomainFSDefPtr def); void virDomainFSDefFree(virDomainFSDefPtr def);
void virDomainActualNetDefFree(virDomainActualNetDefPtr def); void virDomainActualNetDefFree(virDomainActualNetDefPtr def);
void virDomainNetDefClear(virDomainNetDefPtr def);
void virDomainNetDefFree(virDomainNetDefPtr def); void virDomainNetDefFree(virDomainNetDefPtr def);
void virDomainSmartcardDefFree(virDomainSmartcardDefPtr def); void virDomainSmartcardDefFree(virDomainSmartcardDefPtr def);
void virDomainChrDefFree(virDomainChrDefPtr def); void virDomainChrDefFree(virDomainChrDefPtr def);

View File

@ -372,6 +372,7 @@ virDomainMemoryFindInactiveByDef;
virDomainMemoryInsert; virDomainMemoryInsert;
virDomainMemoryRemove; virDomainMemoryRemove;
virDomainNetAppendIPAddress; virDomainNetAppendIPAddress;
virDomainNetDefClear;
virDomainNetDefFormat; virDomainNetDefFormat;
virDomainNetDefFree; virDomainNetDefFree;
virDomainNetFind; virDomainNetFind;