|
|
99cbc7 |
From d39f6ba78035adbe3772603a1939af1e67464448 Mon Sep 17 00:00:00 2001
|
|
|
99cbc7 |
Message-Id: <d39f6ba78035adbe3772603a1939af1e67464448@dist-git>
|
|
|
99cbc7 |
From: Luyao Huang <lhuang@redhat.com>
|
|
|
99cbc7 |
Date: Wed, 11 Jul 2018 17:29:48 +0200
|
|
|
99cbc7 |
Subject: [PATCH] virDomainConfNWFilterInstantiate: initialize @xml to avoid
|
|
|
99cbc7 |
random crash
|
|
|
99cbc7 |
MIME-Version: 1.0
|
|
|
99cbc7 |
Content-Type: text/plain; charset=UTF-8
|
|
|
99cbc7 |
Content-Transfer-Encoding: 8bit
|
|
|
99cbc7 |
|
|
|
99cbc7 |
https://bugzilla.redhat.com/show_bug.cgi?id=1599545
|
|
|
99cbc7 |
|
|
|
99cbc7 |
If the code jump to the cleanup before assigning value to @xml
|
|
|
99cbc7 |
libvirtd may crash when it tries to free an uninitialized pointer.
|
|
|
99cbc7 |
|
|
|
99cbc7 |
backtrace:
|
|
|
99cbc7 |
|
|
|
99cbc7 |
0 0x00007ffff428d59c in free () from /lib64/libc.so.6
|
|
|
99cbc7 |
1 0x00007ffff721314a in virFree (ptrptr=ptrptr@entry=0x7fffc67f1b00) at util/viralloc.c:582
|
|
|
99cbc7 |
2 0x00007ffff7345ac4 in virDomainConfNWFilterInstantiate (vmname=<optimized out>,
|
|
|
99cbc7 |
vmuuid=vmuuid@entry=0x7fffc0181ca8 "߉\237\\۔H\262\206z\340\302f\265\233z", net=<optimized out>,
|
|
|
99cbc7 |
ignoreExists=ignoreExists@entry=true) at conf/domain_nwfilter.c:122
|
|
|
99cbc7 |
3 0x00007fffca5a77f6 in qemuProcessFiltersInstantiate (ignoreExists=true, def=0x7fffc0181ca0) at qemu/qemu_process.c:3028
|
|
|
99cbc7 |
4 qemuProcessReconnect (opaque=<optimized out>) at qemu/qemu_process.c:7653
|
|
|
99cbc7 |
5 0x00007ffff72c4895 in virThreadHelper (data=<optimized out>) at util/virthread.c:206
|
|
|
99cbc7 |
6 0x00007ffff45dcdd5 in start_thread () from /lib64/libpthread.so.0
|
|
|
99cbc7 |
7 0x00007ffff4305ead in clone () from /lib64/libc.so.6
|
|
|
99cbc7 |
|
|
|
99cbc7 |
Signed-off-by: Luyao Huang <lhuang@redhat.com>
|
|
|
99cbc7 |
(cherry picked from commit d7557f5f6f51264c1b5623e97f7b4d5259d4d3b6)
|
|
|
99cbc7 |
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
|
|
|
99cbc7 |
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
|
|
99cbc7 |
---
|
|
|
99cbc7 |
src/conf/domain_nwfilter.c | 2 +-
|
|
|
99cbc7 |
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
99cbc7 |
|
|
|
99cbc7 |
diff --git a/src/conf/domain_nwfilter.c b/src/conf/domain_nwfilter.c
|
|
|
99cbc7 |
index 948b32481e..24b5f42ddd 100644
|
|
|
99cbc7 |
--- a/src/conf/domain_nwfilter.c
|
|
|
99cbc7 |
+++ b/src/conf/domain_nwfilter.c
|
|
|
99cbc7 |
@@ -90,7 +90,7 @@ virDomainConfNWFilterInstantiate(const char *vmname,
|
|
|
99cbc7 |
virConnectPtr conn = virGetConnectNWFilter();
|
|
|
99cbc7 |
virNWFilterBindingDefPtr def = NULL;
|
|
|
99cbc7 |
virNWFilterBindingPtr binding = NULL;
|
|
|
99cbc7 |
- char *xml;
|
|
|
99cbc7 |
+ char *xml = NULL;
|
|
|
99cbc7 |
int ret = -1;
|
|
|
99cbc7 |
|
|
|
99cbc7 |
VIR_DEBUG("vmname=%s portdev=%s filter=%s ignoreExists=%d",
|
|
|
99cbc7 |
--
|
|
|
99cbc7 |
2.18.0
|
|
|
99cbc7 |
|