]> xenbits.xensource.com Git - libvirt.git/commitdiff
virDomainDeviceDriveAddressParseXML: Use virXMLProp*
authorTim Wiederhake <twiederh@redhat.com>
Wed, 21 Apr 2021 12:08:04 +0000 (14:08 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Wed, 21 Apr 2021 13:13:00 +0000 (15:13 +0200)
Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
src/conf/device_conf.c

index e527899d7dc53e4e56d3bc44d6584da9fffb4f24..66b7af109f3d21bf8caa8e701de50dbbe5424fc6 100644 (file)
@@ -319,40 +319,21 @@ int
 virDomainDeviceDriveAddressParseXML(xmlNodePtr node,
                                     virDomainDeviceDriveAddress *addr)
 {
-    g_autofree char *controller = virXMLPropString(node, "controller");
-    g_autofree char *bus = virXMLPropString(node, "bus");
-    g_autofree char *target = virXMLPropString(node, "target");
-    g_autofree char *unit = virXMLPropString(node, "unit");
-
     memset(addr, 0, sizeof(*addr));
 
-    if (controller &&
-        virStrToLong_uip(controller, NULL, 10, &addr->controller) < 0) {
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                       _("Cannot parse <address> 'controller' attribute"));
+    if (virXMLPropUInt(node, "controller", 10, VIR_XML_PROP_NONE,
+                       &addr->controller) < 0)
         return -1;
-    }
 
-    if (bus &&
-        virStrToLong_uip(bus, NULL, 10, &addr->bus) < 0) {
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                       _("Cannot parse <address> 'bus' attribute"));
+    if (virXMLPropUInt(node, "bus", 10, VIR_XML_PROP_NONE, &addr->bus) < 0)
         return -1;
-    }
 
-    if (target &&
-        virStrToLong_uip(target, NULL, 10, &addr->target) < 0) {
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                       _("Cannot parse <address> 'target' attribute"));
+    if (virXMLPropUInt(node, "target", 10, VIR_XML_PROP_NONE,
+                       &addr->target) < 0)
         return -1;
-    }
 
-    if (unit &&
-        virStrToLong_uip(unit, NULL, 10, &addr->unit) < 0) {
-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
-                       _("Cannot parse <address> 'unit' attribute"));
+    if (virXMLPropUInt(node, "unit", 10, VIR_XML_PROP_NONE, &addr->unit) < 0)
         return -1;
-    }
 
     return 0;
 }