From a6916977bb4d3b1d765ceccd614f6514b0ce355a Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Fri, 25 Nov 2011 13:23:03 +0100 Subject: [PATCH] conf: Improve incorrect root element error messages When user pass wrong root element, it is not 'internal error' and we can give him hint what we are expecting. --- src/conf/domain_conf.c | 12 ++++++++---- src/conf/interface_conf.c | 6 ++++-- src/conf/network_conf.c | 6 ++++-- src/conf/node_device_conf.c | 6 ++++-- src/conf/secret_conf.c | 6 ++++-- src/security/virt-aa-helper.c | 2 +- 6 files changed, 25 insertions(+), 13 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index f04e477e3d..bb504f98a6 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -7932,8 +7932,10 @@ virDomainDefPtr virDomainDefParseNode(virCapsPtr caps, virDomainDefPtr def = NULL; if (!xmlStrEqual(root->name, BAD_CAST "domain")) { - virDomainReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("incorrect root element")); + virDomainReportError(VIR_ERR_XML_ERROR, + _("unexpected root element <%s>, " + "expecting "), + root->name); goto cleanup; } @@ -7963,8 +7965,10 @@ virDomainObjParseNode(virCapsPtr caps, virDomainObjPtr obj = NULL; if (!xmlStrEqual(root->name, BAD_CAST "domstatus")) { - virDomainReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("incorrect root element")); + virDomainReportError(VIR_ERR_XML_ERROR, + _("unexpected root element <%s>, " + "expecting "), + root->name); goto cleanup; } diff --git a/src/conf/interface_conf.c b/src/conf/interface_conf.c index fd8d1ae28f..59f74a1ab7 100644 --- a/src/conf/interface_conf.c +++ b/src/conf/interface_conf.c @@ -838,8 +838,10 @@ virInterfaceDefPtr virInterfaceDefParseNode(xmlDocPtr xml, virInterfaceDefPtr def = NULL; if (!xmlStrEqual(root->name, BAD_CAST "interface")) { - virInterfaceReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("incorrect root element")); + virInterfaceReportError(VIR_ERR_XML_ERROR, + _("unexpected root element <%s>, " + "expecting "), + root->name); return NULL; } diff --git a/src/conf/network_conf.c b/src/conf/network_conf.c index 10afcde6d9..1058b0774a 100644 --- a/src/conf/network_conf.c +++ b/src/conf/network_conf.c @@ -1107,8 +1107,10 @@ virNetworkDefPtr virNetworkDefParseNode(xmlDocPtr xml, virNetworkDefPtr def = NULL; if (!xmlStrEqual(root->name, BAD_CAST "network")) { - virNetworkReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("incorrect root element")); + virNetworkReportError(VIR_ERR_XML_ERROR, + _("unexpected root element <%s>, " + "expecting "), + root->name); return NULL; } diff --git a/src/conf/node_device_conf.c b/src/conf/node_device_conf.c index fc284e01e0..084121f26d 100644 --- a/src/conf/node_device_conf.c +++ b/src/conf/node_device_conf.c @@ -1204,8 +1204,10 @@ virNodeDeviceDefParseNode(xmlDocPtr xml, virNodeDeviceDefPtr def = NULL; if (!xmlStrEqual(root->name, BAD_CAST "device")) { - virNodeDeviceReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("incorrect root element")); + virNodeDeviceReportError(VIR_ERR_XML_ERROR, + _("unexpected root element <%s> " + "expecting "), + root->name); return NULL; } diff --git a/src/conf/secret_conf.c b/src/conf/secret_conf.c index a51fc6963a..6e80733dd2 100644 --- a/src/conf/secret_conf.c +++ b/src/conf/secret_conf.c @@ -126,8 +126,10 @@ secretXMLParseNode(xmlDocPtr xml, xmlNodePtr root) char *uuidstr = NULL; if (!xmlStrEqual(root->name, BAD_CAST "secret")) { - virSecretReportError(VIR_ERR_XML_ERROR, "%s", - _("incorrect root element")); + virSecretReportError(VIR_ERR_XML_ERROR, + _("unexpected root element <%s>, " + "expecting "), + root->name); goto cleanup; } diff --git a/src/security/virt-aa-helper.c b/src/security/virt-aa-helper.c index ad0697424f..14399cce63 100644 --- a/src/security/virt-aa-helper.c +++ b/src/security/virt-aa-helper.c @@ -644,7 +644,7 @@ caps_mockup(vahControl * ctl, const char *xmlStr) } if (!xmlStrEqual(ctxt->node->name, BAD_CAST "domain")) { - vah_error(NULL, 0, _("incorrect root element")); + vah_error(NULL, 0, _("unexpected root element, expecting ")); goto cleanup; }