Dynamically grow the array of network interfaces for each interface
read, instead of using a single array of size 4. This way, in the
future it will be easier to not limit the number of network interfaces
(which this patch still does not change).
Signed-off-by: Pino Toscano <ptoscano(a)redhat.com>
---
src/vmx/vmx.c | 17 +++++++----------
1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/src/vmx/vmx.c b/src/vmx/vmx.c
index ba47a87b7..fd9b55950 100644
--- a/src/vmx/vmx.c
+++ b/src/vmx/vmx.c
@@ -1751,19 +1751,16 @@ virVMXParseConfig(virVMXContext *ctx,
}
/* def:nets */
- if (VIR_ALLOC_N(def->nets, 4) < 0)
- goto cleanup;
-
- def->nnets = 0;
-
for (controller = 0; controller < 4; ++controller) {
- if (virVMXParseEthernet(conf, controller,
- &def->nets[def->nnets]) < 0) {
+ virDomainNetDefPtr net = NULL;
+ if (virVMXParseEthernet(conf, controller, &net) < 0)
goto cleanup;
- }
- if (def->nets[def->nnets] != NULL)
- ++def->nnets;
+ if (!net)
+ continue;
+
+ if (VIR_APPEND_ELEMENT(def->nets, def->nnets, net) < 0)
+ goto cleanup;
}
/* def:inputs */
--
2.14.3