Refactor all cases which use virXMLPropInt and then subsequently check
that the parsed value is not '-1'/negative by using the VIR_XML_PROP_NONNEGATIVE
flag for virXMLPropInt.
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/conf/domain_conf.c | 46 +++++++++---------------------------------
1 file changed, 10 insertions(+), 36 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index a9a2afc7f1..77cb5f1456 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -8263,27 +8263,15 @@ virDomainControllerDefParseXML(virDomainXMLOption *xmlopt,
return NULL;
}
- if ((rc = virXMLPropInt(node, "ports", 10, VIR_XML_PROP_NONE, &ports,
-1)) < 0)
+ if (virXMLPropInt(node, "ports", 10, VIR_XML_PROP_NONNEGATIVE, &ports,
-1) < 0)
return NULL;
- if ((rc == 1) && ports < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("Invalid ports: %i"), ports);
- return NULL;
- }
switch (def->type) {
case VIR_DOMAIN_CONTROLLER_TYPE_VIRTIO_SERIAL: {
- if ((rc = virXMLPropInt(node, "vectors", 10, VIR_XML_PROP_NONE,
- &def->opts.vioserial.vectors,
- def->opts.vioserial.vectors)) < 0)
- return NULL;
-
- if ((rc == 1) && def->opts.vioserial.vectors < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("Invalid vectors: %i"),
- def->opts.vioserial.vectors);
+ if (virXMLPropInt(node, "vectors", 10, VIR_XML_PROP_NONNEGATIVE,
+ &def->opts.vioserial.vectors,
+ def->opts.vioserial.vectors) < 0)
return NULL;
- }
def->opts.vioserial.ports = ports;
break;
@@ -8345,29 +8333,15 @@ virDomainControllerDefParseXML(virDomainXMLOption *xmlopt,
break;
case VIR_DOMAIN_CONTROLLER_TYPE_XENBUS: {
- if ((rc = virXMLPropInt(node, "maxGrantFrames", 10, VIR_XML_PROP_NONE,
- &def->opts.xenbusopts.maxGrantFrames,
- def->opts.xenbusopts.maxGrantFrames)) < 0)
+ if (virXMLPropInt(node, "maxGrantFrames", 10,
VIR_XML_PROP_NONNEGATIVE,
+ &def->opts.xenbusopts.maxGrantFrames,
+ def->opts.xenbusopts.maxGrantFrames) < 0)
return NULL;
- if ((rc == 1) && def->opts.xenbusopts.maxGrantFrames < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("Invalid maxGrantFrames: %i"),
- def->opts.xenbusopts.maxGrantFrames);
+ if (virXMLPropInt(node, "maxEventChannels", 10,
VIR_XML_PROP_NONNEGATIVE,
+ &def->opts.xenbusopts.maxEventChannels,
+ def->opts.xenbusopts.maxEventChannels) < 0)
return NULL;
- }
-
- if ((rc = virXMLPropInt(node, "maxEventChannels", 10,
VIR_XML_PROP_NONE,
- &def->opts.xenbusopts.maxEventChannels,
- def->opts.xenbusopts.maxEventChannels)) < 0)
- return NULL;
-
- if ((rc == 1) && def->opts.xenbusopts.maxEventChannels < 0) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("Invalid maxEventChannels: %i"),
- def->opts.xenbusopts.maxEventChannels);
- return NULL;
- }
break;
}
--
2.37.1