]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
virDomainVirtioOptionsParseXML: Use virXMLProp*
authorTim Wiederhake <twiederh@redhat.com>
Wed, 21 Apr 2021 13:33:23 +0000 (15:33 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Wed, 21 Apr 2021 15:11:04 +0000 (17:11 +0200)
Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
src/conf/domain_conf.c

index f30c1b9e5d6d0ae15da40164b8d8ef2bea9862a9..87384c52b5c698f0d43852212b5c47aa80c42728 100644 (file)
@@ -1603,45 +1603,22 @@ static int
 virDomainVirtioOptionsParseXML(xmlNodePtr driver,
                                virDomainVirtioOptions **virtio)
 {
-    int val;
-    virDomainVirtioOptions *res;
-    g_autofree char *str = NULL;
-
     if (*virtio || !driver)
         return 0;
 
     *virtio = g_new0(virDomainVirtioOptions, 1);
 
-    res = *virtio;
-
-    if ((str = virXMLPropString(driver, "iommu"))) {
-        if ((val = virTristateSwitchTypeFromString(str)) <= 0) {
-            virReportError(VIR_ERR_XML_ERROR, "%s",
-                           _("invalid iommu value"));
-            return -1;
-        }
-        res->iommu = val;
-    }
-    VIR_FREE(str);
+    if (virXMLPropTristateSwitch(driver, "iommu", VIR_XML_PROP_NONE,
+                                 &(*virtio)->iommu) < 0)
+        return -1;
 
-    if ((str = virXMLPropString(driver, "ats"))) {
-        if ((val = virTristateSwitchTypeFromString(str)) <= 0) {
-            virReportError(VIR_ERR_XML_ERROR, "%s",
-                           _("invalid ats value"));
-            return -1;
-        }
-        res->ats = val;
-    }
-    VIR_FREE(str);
+    if (virXMLPropTristateSwitch(driver, "ats", VIR_XML_PROP_NONE,
+                                 &(*virtio)->ats) < 0)
+        return -1;
 
-    if ((str = virXMLPropString(driver, "packed"))) {
-        if ((val = virTristateSwitchTypeFromString(str)) <= 0) {
-            virReportError(VIR_ERR_XML_ERROR, "%s",
-                           _("invalid packed value"));
-            return -1;
-        }
-        res->packed = val;
-    }
+    if (virXMLPropTristateSwitch(driver, "packed", VIR_XML_PROP_NONE,
+                                 &(*virtio)->packed) < 0)
+        return -1;
 
     return 0;
 }