int status;
if (STREQ(name, "lxc.network.type")) {
+ virDomainDefPtr def = parseData->def;
+ size_t networks = parseData->networks;
+ bool privnet = parseData->privnet;
+
/* Store the previous NIC */
status = lxcAddNetworkDefinition(parseData);
if (status < 0)
return -1;
else if (status > 0)
- parseData->networks++;
+ networks++;
else if (parseData->type != NULL && STREQ(parseData->type, "none"))
- parseData->privnet = false;
-
- /* Start a new network interface config */
- parseData->type = NULL;
- parseData->link = NULL;
- parseData->mac = NULL;
- parseData->flag = NULL;
- parseData->macvlanmode = NULL;
- parseData->vlanid = NULL;
- parseData->name = NULL;
-
- parseData->ips = NULL;
- parseData->nips = 0;
+ privnet = false;
+
+ /* clean NIC to store a new one */
+ memset(parseData, 0, sizeof(*parseData));
+
+ parseData->def = def;
+ parseData->networks = networks;
+ parseData->privnet = privnet;
/* Keep the new value */
parseData->type = value->str;