}
netdef = network->def;
+ if (VIR_ALLOC(iface->data.network.actual) < 0)
+ goto error;
+
/* portgroup can be present for any type of network, in particular
* for bandwidth information, so we need to check for that and
* fill it in appropriately for all forward types.
else if (portgroup && portgroup->bandwidth)
bandwidth = portgroup->bandwidth;
- if (bandwidth) {
- if (!iface->data.network.actual &&
- VIR_ALLOC(iface->data.network.actual) < 0)
- goto error;
- if (virNetDevBandwidthCopy(&iface->data.network.actual->bandwidth,
- bandwidth) < 0)
- goto error;
- }
+ if (bandwidth && virNetDevBandwidthCopy(&iface->data.network.actual->bandwidth,
+ bandwidth) < 0)
+ goto error;
/* copy appropriate vlan info to actualNet */
if (iface->vlan.nTags > 0)
else if (netdef->vlan.nTags > 0)
vlan = &netdef->vlan;
- if (vlan) {
- if (!iface->data.network.actual &&
- VIR_ALLOC(iface->data.network.actual) < 0)
- goto error;
- if (virNetDevVlanCopy(&iface->data.network.actual->vlan, vlan) < 0)
- goto error;
- }
+ if (vlan && virNetDevVlanCopy(&iface->data.network.actual->vlan, vlan) < 0)
+ goto error;
if ((netdef->forward.type == VIR_NETWORK_FORWARD_NONE) ||
(netdef->forward.type == VIR_NETWORK_FORWARD_NAT) ||
*NETWORK; we just keep the info from the portgroup in
* iface->data.network.actual
*/
- if (iface->data.network.actual)
- iface->data.network.actual->type = VIR_DOMAIN_NET_TYPE_NETWORK;
+ iface->data.network.actual->type = VIR_DOMAIN_NET_TYPE_NETWORK;
if (networkPlugBandwidth(network, iface) < 0)
goto error;
* is VIR_DOMAIN_NET_TYPE_BRIDGE
*/
- if (!iface->data.network.actual &&
- VIR_ALLOC(iface->data.network.actual) < 0)
- goto error;
-
iface->data.network.actual->type = actualType = VIR_DOMAIN_NET_TYPE_BRIDGE;
if (VIR_STRDUP(iface->data.network.actual->data.bridge.brname,
netdef->bridge) < 0)
virDomainHostdevSubsysPciBackendType backend;
- if (!iface->data.network.actual &&
- VIR_ALLOC(iface->data.network.actual) < 0)
- goto error;
-
iface->data.network.actual->type = actualType = VIR_DOMAIN_NET_TYPE_HOSTDEV;
if (netdef->forward.npfs > 0 && netdef->forward.nifs <= 0 &&
networkCreateInterfacePool(netdef) < 0) {
* VIR_DOMAIN_NET_TYPE_DIRECT.
*/
- if (!iface->data.network.actual &&
- VIR_ALLOC(iface->data.network.actual) < 0)
- goto error;
-
/* Set type=direct and appropriate <source mode='xxx'/> */
iface->data.network.actual->type = actualType = VIR_DOMAIN_NET_TYPE_DIRECT;
switch (netdef->forward.type) {
}
success:
- netdef->connections--;
+ if (iface->data.network.actual)
+ netdef->connections--;
VIR_DEBUG("Releasing network %s, %d connections",
netdef->name, netdef->connections);
ret = 0;