[libvirt] [PATCH] conf: fix crash when hotplug a channel chr device with no target

Luyao Huang lhuang at redhat.com
Tue Jan 13 08:41:05 UTC 2015


when we try to hotplug a channel chr device with no target, we
will get success(which should fail) in virDomainChrDefParseXML,
because we use goto cleanup this place and return def.then cause
a big problem in virDomainChrEquals(touch a shouldn't happend place).

Signed-off-by: Luyao Huang <lhuang at redhat.com>
 src/conf/domain_conf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 57e99e6..3cbb93d 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -8700,7 +8700,7 @@ virDomainChrDefParseXML(xmlXPathContextPtr ctxt,
     if (!seenTarget &&
         ((def->targetType = virDomainChrDefaultTargetType(def->deviceType)) < 0))
-        goto cleanup;
+        goto error;
     if (virDomainChrSourceDefParseXML(&def->source, node->children, flags, def,
                                       ctxt, vmSeclabels, nvmSeclabels) < 0)

More information about the libvir-list mailing list