From b8e415b467b97953a6a71c90b324a9521a8e3249 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Wed, 5 Oct 2022 15:08:50 +0200 Subject: [PATCH] virInterfaceDefParseMtu: Use virXPathUInt instead of virXPathULong MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use the proper convertor function and refactor error reporting. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- src/conf/interface_conf.c | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/src/conf/interface_conf.c b/src/conf/interface_conf.c index b31fdce101..671b8b088f 100644 --- a/src/conf/interface_conf.c +++ b/src/conf/interface_conf.c @@ -113,17 +113,15 @@ static int virInterfaceDefParseMtu(virInterfaceDef *def, xmlXPathContextPtr ctxt) { - unsigned long mtu; - int ret; - - ret = virXPathULong("string(./mtu/@size)", ctxt, &mtu); - if ((ret == -2) || ((ret == 0) && (mtu > 100000))) { - virReportError(VIR_ERR_XML_ERROR, - "%s", _("interface mtu value is improper")); + if (virXPathUInt("string(./mtu/@size)", ctxt, &def->mtu) == -2) + return -1; + + if (def->mtu > 100000) { + virReportError(VIR_ERR_XML_ERROR, "%s", + _("value of the 'size' attribute of 'mtu' element must be at most 100000")); return -1; - } else if (ret == 0) { - def->mtu = (unsigned int) mtu; } + return 0; }