]> xenbits.xensource.com Git - libvirt.git/commitdiff
virNetDevBandwidthParse: Use 'virXMLPropUInt' to parse 'classID'
authorPeter Krempa <pkrempa@redhat.com>
Mon, 13 Feb 2023 13:45:45 +0000 (14:45 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 5 Jun 2023 11:23:06 +0000 (13:23 +0200)
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
src/conf/netdev_bandwidth_conf.c

index 48be9d2f38670000e1cd4ca9f4cf8189bceee6b8..2ac1983dce83e98707a68786c56dba250300a1fb 100644 (file)
@@ -108,24 +108,24 @@ virNetDevBandwidthParse(virNetDevBandwidth **bandwidth,
     g_autoptr(virNetDevBandwidth) def = NULL;
     xmlNodePtr cur;
     xmlNodePtr in = NULL, out = NULL;
-    g_autofree char *class_id_prop = NULL;
+    unsigned int class_id_value;
+    int rc;
 
     def = g_new0(virNetDevBandwidth, 1);
 
-    class_id_prop = virXMLPropString(node, "classID");
-    if (class_id_prop) {
+
+    if ((rc = virXMLPropUInt(node, "classID", 10, VIR_XML_PROP_NONE, &class_id_value)) < 0)
+        return -1;
+
+    if (rc == 1) {
         if (!class_id) {
             virReportError(VIR_ERR_XML_DETAIL, "%s",
                            _("classID attribute not supported on <bandwidth> "
                              "in this usage context"));
             return -1;
         }
-        if (virStrToLong_ui(class_id_prop, NULL, 10, class_id) < 0) {
-            virReportError(VIR_ERR_INTERNAL_ERROR,
-                           _("Unable to parse class id '%1$s'"),
-                           class_id_prop);
-            return -1;
-        }
+
+        *class_id = class_id_value;
     }
 
     cur = node->children;