From: Tim Wiederhake Date: Tue, 18 May 2021 15:04:44 +0000 (+0200) Subject: virDomainDeviceUSBMasterParseXML: Use virXMLProp* X-Git-Tag: v7.4.0-rc1~106 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=081f22c209129b5914064c9db61580c87136668f;p=thirdparty%2Flibvirt.git virDomainDeviceUSBMasterParseXML: Use virXMLProp* This strictens the parser to disallow negative values (interpreted as `UINT_MAX + value + 1`) for attribute `startport`. Allowing negative numbers to be interpreted this way makes no sense for this attribute. Signed-off-by: Tim Wiederhake Reviewed-by: Laine Stump --- diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 661fa53206..86680e0cdb 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -6439,18 +6439,11 @@ static int virDomainDeviceUSBMasterParseXML(xmlNodePtr node, virDomainDeviceUSBMaster *master) { - g_autofree char *startport = NULL; - memset(master, 0, sizeof(*master)); - startport = virXMLPropString(node, "startport"); - - if (startport && - virStrToLong_ui(startport, NULL, 10, &master->startport) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, "%s", - _("Cannot parse 'startport' attribute")); + if (virXMLPropUInt(node, "startport", 10, VIR_XML_PROP_NONE, + &master->startport) < 0) return -1; - } return 0; }