[PATCH] virNodeDeviceDefParse: Don't call post-parse callbacks with NULL def

Peter Krempa pkrempa at redhat.com
Mon Oct 18 07:58:40 UTC 2021


When parsing of the node device XML we'd still call the post-parse and
validation callbacks which makes no sense. Additionally the callbacks
were expecting a non-NULL pointer which leads to a crash.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2014139
Fixes: d5ae634ba28
Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
 src/conf/node_device_conf.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/conf/node_device_conf.c b/src/conf/node_device_conf.c
index 9bbff97ffd..d5e02f623d 100644
--- a/src/conf/node_device_conf.c
+++ b/src/conf/node_device_conf.c
@@ -2178,8 +2178,9 @@ virNodeDeviceDefParse(const char *str,
     g_autoptr(virNodeDeviceDef) def = NULL;

     if ((xml = virXMLParse(filename, str, _("(node_device_definition)"), NULL, false))) {
-        def = virNodeDeviceDefParseNode(xml, xmlDocGetRootElement(xml),
-                                        create, virt_type);
+        if (!(def = virNodeDeviceDefParseNode(xml, xmlDocGetRootElement(xml),
+                                              create, virt_type)))
+            return NULL;
     }

     if (parserCallbacks) {
-- 
2.31.1




More information about the libvir-list mailing list