]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
virNodeDeviceDefParseXML: Use virXMLProp*
authorTim Wiederhake <twiederh@redhat.com>
Mon, 10 May 2021 12:48:41 +0000 (14:48 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Tue, 11 May 2021 12:04:08 +0000 (14:04 +0200)
Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/conf/node_device_conf.c

index 04014f75dc127ff359e09937a70c9c9e3ddf2b4e..4477a8d9d26c2e3fb6999358a6597554a0691a86 100644 (file)
@@ -2089,24 +2089,13 @@ virNodeDeviceDefParseXML(xmlXPathContextPtr ctxt,
 
     for (i = 0, m = 0; i < n; i++) {
         xmlNodePtr node = nodes[i];
-        g_autofree char *tmp = virXMLPropString(node, "type");
-        int val;
+        virNodeDevDevnodeType val;
 
-        if (!tmp) {
-            virReportError(VIR_ERR_INTERNAL_ERROR,
-                           "%s", _("missing devnode type"));
+        if (virXMLPropEnum(node, "type", virNodeDevDevnodeTypeFromString,
+                           VIR_XML_PROP_REQUIRED, &val) < 0)
             goto error;
-        }
-
-        val = virNodeDevDevnodeTypeFromString(tmp);
-
-        if (val < 0) {
-            virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                           _("unknown devnode type '%s'"), tmp);
-            goto error;
-        }
 
-        switch ((virNodeDevDevnodeType)val) {
+        switch (val) {
         case VIR_NODE_DEV_DEVNODE_DEV:
             if (!(def->devnode = virXMLNodeContentString(node)))
                 goto error;