提交 7cfbaad1 编写于 作者: L Laine Stump

conf: new function virDomainNetDefClear

We need to clear these out without freeing the object completely.
上级 70a2c7e0
...@@ -1737,7 +1737,8 @@ virDomainActualNetDefFree(virDomainActualNetDefPtr def) ...@@ -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) ...@@ -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) ...@@ -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) ...@@ -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);
} }
......
...@@ -2492,6 +2492,7 @@ virDomainControllerDefPtr ...@@ -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);
......
...@@ -372,6 +372,7 @@ virDomainMemoryFindInactiveByDef; ...@@ -372,6 +372,7 @@ virDomainMemoryFindInactiveByDef;
virDomainMemoryInsert; virDomainMemoryInsert;
virDomainMemoryRemove; virDomainMemoryRemove;
virDomainNetAppendIPAddress; virDomainNetAppendIPAddress;
virDomainNetDefClear;
virDomainNetDefFormat; virDomainNetDefFormat;
virDomainNetDefFree; virDomainNetDefFree;
virDomainNetFind; virDomainNetFind;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册