From ecac0391e48796b570d540212629205889cab421 Mon Sep 17 00:00:00 2001 From: wangmeiyang <wangmeiyang_yewu@cmss.chinamobile.com> Date: Thu, 1 Dec 2022 09:21:05 +0800 Subject: [PATCH 22/24] vbox_network: fix possible memory leak in vboxNetworkDefineCreateXML() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit virNetworkDef was not freed if the function failed in the first two ifs, causing a possible memory leak. cherry-pick from ef83940524c1138dde616004be6cad5095b94001 Signed-off-by: Kristina Hanicova <khanicov@redhat.com> Signed-off-by: Ján Tomko <jtomko@redhat.com> Signed-off-by: Meiyang Wang <wangmeiyang_yewu@cmss.chinamobile.com> Reviewed-by: Ján Tomko <jtomko@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 19b4d23ed8..dbee9a6f55 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; - virNetworkDefPtr def = virNetworkDefParseString(xml, NULL); + virNetworkDef *def = NULL; virNetworkIPDefPtr ipdef = NULL; unsigned char uuid[VIR_UUID_BUFLEN]; vboxIID vboxnetiid; @@ -393,7 +393,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.27.0