[PATCH] vbox_network: fix possible memory leak in vboxNetworkDefineCreateXML()

Kristina Hanicova posted 1 patch 2 years, 8 months ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/dbbaee4d422be440a68efb72600cb9fd9ceadfed.1629729117.git.khanicov@redhat.com
src/vbox/vbox_network.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] vbox_network: fix possible memory leak in vboxNetworkDefineCreateXML()
Posted by Kristina Hanicova 2 years, 8 months ago
virNetworkDef was not freed if the function failed in the first
two ifs, causing a possible memory leak.

Signed-off-by: Kristina Hanicova <khanicov@redhat.com>
---
 src/vbox/vbox_network.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/vbox/vbox_network.c b/src/vbox/vbox_network.c
index afd2acbb03..d97f571d1b 100644
--- a/src/vbox/vbox_network.c
+++ b/src/vbox/vbox_network.c
@@ -375,7 +375,7 @@ vboxNetworkDefineCreateXML(virConnectPtr conn, const char *xml, bool start)
     PRUnichar *networkNameUtf16 = NULL;
     char *networkNameUtf8 = NULL;
     IHostNetworkInterface *networkInterface = NULL;
-    virNetworkDef *def = virNetworkDefParseString(xml, NULL);
+    virNetworkDef *def = NULL;
     virNetworkIPDef *ipdef = NULL;
     unsigned char uuid[VIR_UUID_BUFLEN];
     vboxIID vboxnetiid;
@@ -394,7 +394,7 @@ vboxNetworkDefineCreateXML(virConnectPtr conn, const char *xml, bool start)
 
     VBOX_IID_INITIALIZE(&vboxnetiid);
 
-    if ((!def) ||
+    if (!(def = virNetworkDefParseString(xml, NULL)) ||
         (def->forward.type != VIR_NETWORK_FORWARD_NONE) ||
         (def->nips == 0 || !def->ips))
         goto cleanup;
-- 
2.31.1

Re: [PATCH] vbox_network: fix possible memory leak in vboxNetworkDefineCreateXML()
Posted by Ján Tomko 2 years, 8 months ago
On a Monday in 2021, Kristina Hanicova wrote:
>virNetworkDef was not freed if the function failed in the first
>two ifs, causing a possible memory leak.
>
>Signed-off-by: Kristina Hanicova <khanicov@redhat.com>
>---
> src/vbox/vbox_network.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>

Reviewed-by: Ján Tomko <jtomko@redhat.com>

Jano