]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
src: add 'schema' and 'validate' variable to virXMLParseHelper()
authorKristina Hanicova <khanicov@redhat.com>
Wed, 11 Aug 2021 12:36:44 +0000 (14:36 +0200)
committerJán Tomko <jtomko@redhat.com>
Thu, 12 Aug 2021 11:12:29 +0000 (13:12 +0200)
Signed-off-by: Kristina Hanicova <khanicov@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Ján Tomko <jtomko@redhat.com>
19 files changed:
src/conf/backup_conf.c
src/conf/checkpoint_conf.c
src/conf/domain_conf.c
src/conf/interface_conf.c
src/conf/network_conf.c
src/conf/node_device_conf.c
src/conf/nwfilter_conf.c
src/conf/secret_conf.c
src/conf/snapshot_conf.c
src/conf/storage_conf.c
src/conf/virnetworkportdef.c
src/conf/virnwfilterbindingdef.c
src/conf/virnwfilterbindingobj.c
src/test/test_driver.c
src/util/virxml.c
src/util/virxml.h
src/vbox/vbox_snapshot_conf.c
src/vz/vz_sdk.c
tests/qemuxml2argvtest.c

index ac92bd4f26a47ee4454e307c52946d80bb544e87..9307357d8443b279a7f2e811560155ec5894d4b6 100644 (file)
@@ -281,7 +281,7 @@ virDomainBackupDefParseString(const char *xmlStr,
     g_autoptr(xmlDoc) xml = NULL;
     int keepBlanksDefault = xmlKeepBlanksDefault(0);
 
-    if ((xml = virXMLParse(NULL, xmlStr, _("(domain_backup)")))) {
+    if ((xml = virXMLParse(NULL, xmlStr, _("(domain_backup)"), NULL, false))) {
         xmlKeepBlanksDefault(keepBlanksDefault);
         ret = virDomainBackupDefParseNode(xml, xmlDocGetRootElement(xml),
                                           xmlopt, flags);
index 7b26da416bc8a957d4e02a0b6f3d804700161697..dd0e6035fa23440c6a9fee36a30f763764502091 100644 (file)
@@ -226,7 +226,7 @@ virDomainCheckpointDefParseString(const char *xmlStr,
     xmlDocPtr xml;
     int keepBlanksDefault = xmlKeepBlanksDefault(0);
 
-    if ((xml = virXMLParse(NULL, xmlStr, _("(domain_checkpoint)")))) {
+    if ((xml = virXMLParse(NULL, xmlStr, _("(domain_checkpoint)"), NULL, false))) {
         xmlKeepBlanksDefault(keepBlanksDefault);
         ret = virDomainCheckpointDefParseNode(xml, xmlDocGetRootElement(xml),
                                               xmlopt, parseOpaque, flags);
index 15452ef6fcc2591f91f135c5b80c42d867fff430..b996a0cc3c1ce28cd304b0fc198547bf03b4eba4 100644 (file)
@@ -20400,7 +20400,7 @@ virDomainDefParse(const char *xmlStr,
     virDomainDef *def = NULL;
     int keepBlanksDefault = xmlKeepBlanksDefault(0);
     xmlNodePtr root;
-    if (!(xml = virXMLParse(filename, xmlStr, _("(domain_definition)"))))
+    if (!(xml = virXMLParse(filename, xmlStr, _("(domain_definition)"), NULL, false)))
         goto cleanup;
 
     root = xmlDocGetRootElement(xml);
index d84ec66defb593f8ba05203609b0e5099ec84945..c4b763d0dec5ab900b531a876bebbd843455d1ac 100644 (file)
@@ -824,7 +824,7 @@ virInterfaceDefParse(const char *xmlStr,
     xmlDocPtr xml;
     virInterfaceDef *def = NULL;
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(interface_definition)")))) {
+    if ((xml = virXMLParse(filename, xmlStr, _("(interface_definition)"), NULL, false))) {
         def = virInterfaceDefParseNode(xml, xmlDocGetRootElement(xml));
         xmlFreeDoc(xml);
     }
index e34ac52a68776defdec3718861247f1ab8018481..fbd939a1f1fb9881260311a6de3f4171f7e9e3b9 100644 (file)
@@ -2091,7 +2091,7 @@ virNetworkDefParse(const char *xmlStr,
     virNetworkDef *def = NULL;
     int keepBlanksDefault = xmlKeepBlanksDefault(0);
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(network_definition)"))))
+    if ((xml = virXMLParse(filename, xmlStr, _("(network_definition)"), NULL, false)))
         def = virNetworkDefParseNode(xml, xmlDocGetRootElement(xml), xmlopt);
 
     xmlKeepBlanksDefault(keepBlanksDefault);
index d6093f4aa9f3521e8c9cce87bf3b94f38671b974..bda1a11b37a0d9ebbc76facff0f9d617d2dcdefd 100644 (file)
@@ -2177,7 +2177,7 @@ virNodeDeviceDefParse(const char *str,
     xmlDocPtr xml;
     g_autoptr(virNodeDeviceDef) def = NULL;
 
-    if ((xml = virXMLParse(filename, str, _("(node_device_definition)")))) {
+    if ((xml = virXMLParse(filename, str, _("(node_device_definition)"), NULL, false))) {
         def = virNodeDeviceDefParseNode(xml, xmlDocGetRootElement(xml),
                                         create, virt_type);
         xmlFreeDoc(xml);
index fc81fd97ea22bb4885a5d82fbc368fda6da6e20b..b7adae7161ca4c7ac9df7b081f83928864fceff6 100644 (file)
@@ -2744,7 +2744,7 @@ virNWFilterDefParse(const char *xmlStr,
     virNWFilterDef *def = NULL;
     xmlDocPtr xml;
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(nwfilter_definition)")))) {
+    if ((xml = virXMLParse(filename, xmlStr, _("(nwfilter_definition)"), NULL, false))) {
         def = virNWFilterDefParseNode(xml, xmlDocGetRootElement(xml));
         xmlFreeDoc(xml);
     }
index 7bfdc58b83e44f4d7fe59f440a825a8a3fef568a..5968b4365c42354ca73aa643440d662d4f330660 100644 (file)
@@ -196,7 +196,7 @@ virSecretDefParse(const char *xmlStr,
     xmlDocPtr xml;
     virSecretDef *ret = NULL;
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(definition_of_secret)")))) {
+    if ((xml = virXMLParse(filename, xmlStr, _("(definition_of_secret)"), NULL, false))) {
         ret = secretXMLParseNode(xml, xmlDocGetRootElement(xml));
         xmlFreeDoc(xml);
     }
index 0592640dd91b44eb8f6c043a35e3df4fa3dff48b..3282627044d56b3f0f49b37bc85aad15f9499610 100644 (file)
@@ -462,7 +462,7 @@ virDomainSnapshotDefParseString(const char *xmlStr,
     xmlDocPtr xml;
     int keepBlanksDefault = xmlKeepBlanksDefault(0);
 
-    if ((xml = virXMLParse(NULL, xmlStr, _("(domain_snapshot)")))) {
+    if ((xml = virXMLParse(NULL, xmlStr, _("(domain_snapshot)"), NULL, false))) {
         xmlKeepBlanksDefault(keepBlanksDefault);
         ret = virDomainSnapshotDefParseNode(xml, xmlDocGetRootElement(xml),
                                             xmlopt, parseOpaque,
index ad2eb66417e60aa2f29d462f7f4bec6f9c8d4548..e72e8d0adeaa7c5fcdf080a6fbe895f2e5c2dd88 100644 (file)
@@ -1009,7 +1009,7 @@ virStoragePoolDefParse(const char *xmlStr,
     virStoragePoolDef *ret = NULL;
     xmlDocPtr xml;
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(storage_pool_definition)")))) {
+    if ((xml = virXMLParse(filename, xmlStr, _("(storage_pool_definition)"), NULL, false))) {
         ret = virStoragePoolDefParseNode(xml, xmlDocGetRootElement(xml));
         xmlFreeDoc(xml);
     }
@@ -1478,7 +1478,7 @@ virStorageVolDefParse(virStoragePoolDef *pool,
     virStorageVolDef *ret = NULL;
     xmlDocPtr xml;
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(storage_volume_definition)")))) {
+    if ((xml = virXMLParse(filename, xmlStr, _("(storage_volume_definition)"), NULL, false))) {
         ret = virStorageVolDefParseNode(pool, xml, xmlDocGetRootElement(xml), flags);
         xmlFreeDoc(xml);
     }
index adda66590a257e9a867370d7899b71bce8fd7277..9c2a6298d213efefaca977803363cbfc66d0b4bf 100644 (file)
@@ -297,7 +297,7 @@ virNetworkPortDefParse(const char *xmlStr,
     virNetworkPortDef *def = NULL;
     xmlDocPtr xml;
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(networkport_definition)")))) {
+    if ((xml = virXMLParse(filename, xmlStr, _("(networkport_definition)"), NULL, false))) {
         def = virNetworkPortDefParseNode(xml, xmlDocGetRootElement(xml));
         xmlFreeDoc(xml);
     }
index 22ecf7b82892735e69099996244b8533ab42c90c..4079fcdba4e4b93fa55c81953ab398e9e57c8e67 100644 (file)
@@ -188,7 +188,7 @@ virNWFilterBindingDefParse(const char *xmlStr,
     virNWFilterBindingDef *def = NULL;
     xmlDocPtr xml;
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(nwfilterbinding_definition)")))) {
+    if ((xml = virXMLParse(filename, xmlStr, _("(nwfilterbinding_definition)"), NULL, false))) {
         def = virNWFilterBindingDefParseNode(xml, xmlDocGetRootElement(xml));
         xmlFreeDoc(xml);
     }
index d48c95af884f10a787affe0f2a6d66bcf5e4f8e5..11426e0a4db822379372f11bb058a23ad647c28d 100644 (file)
@@ -265,7 +265,7 @@ virNWFilterBindingObjParse(const char *xmlStr,
     virNWFilterBindingObj *obj = NULL;
     xmlDocPtr xml;
 
-    if ((xml = virXMLParse(filename, xmlStr, _("(nwfilterbinding_status)")))) {
+    if ((xml = virXMLParse(filename, xmlStr, _("(nwfilterbinding_status)"), NULL, false))) {
         obj = virNWFilterBindingObjParseNode(xml, xmlDocGetRootElement(xml));
         xmlFreeDoc(xml);
     }
index 7c3bb70be3fcb38c90652b3a883e6eee65243fee..00cc13511af104fe93857ec66209792b87371395 100644 (file)
@@ -832,7 +832,7 @@ testParseXMLDocFromFile(xmlNodePtr node, const char *file, const char *type)
     if ((relFile = virXMLPropString(node, "file"))) {
         absFile = testBuildFilename(file, relFile);
 
-        if (!(doc = virXMLParse(absFile, NULL, type)))
+        if (!(doc = virXMLParse(absFile, NULL, type, NULL, false)))
             goto error;
 
         ret = xmlCopyNode(xmlDocGetRootElement(doc), 1);
index 4360b1548632e7b7a55e4e834d6797e400fbd0fa..0220c5906fac25531d943eaeede600c821332ea7 100644 (file)
@@ -1096,6 +1096,8 @@ catchXMLError(void *ctx, const char *msg G_GNUC_UNUSED, ...)
  * @url: URL of XML document for string parser
  * @rootelement: Optional name of the expected root element
  * @ctxt: optional pointer to populate with new context pointer
+ * @schemafile: unused
+ * @validate: unused
  *
  * Parse XML document provided either as a file or a string. The function
  * guarantees that the XML document contains a root element.
@@ -1111,7 +1113,9 @@ virXMLParseHelper(int domcode,
                   const char *xmlStr,
                   const char *url,
                   const char *rootelement,
-                  xmlXPathContextPtr *ctxt)
+                  xmlXPathContextPtr *ctxt,
+                  const char *schemafile G_GNUC_UNUSED,
+                  bool validate G_GNUC_UNUSED)
 {
     struct virParserData private;
     g_autoptr(xmlParserCtxt) pctxt = NULL;
index 0bb0d1c118ee43aab94302a4780750c9bffcf32d..e9359b1ef14ff47c54739807db571ac70d73649d 100644 (file)
@@ -170,7 +170,9 @@ virXMLParseHelper(int domcode,
                   const char *xmlStr,
                   const char *url,
                   const char *rootelement,
-                  xmlXPathContextPtr *ctxt);
+                  xmlXPathContextPtr *ctxt,
+                  const char *schemafile,
+                  bool validate);
 
 const char *
 virXMLPickShellSafeComment(const char *str1,
@@ -185,8 +187,8 @@ virXMLPickShellSafeComment(const char *str1,
  *
  * Return the parsed document object, or NULL on failure.
  */
-#define virXMLParse(filename, xmlStr, url) \
-    virXMLParseHelper(VIR_FROM_THIS, filename, xmlStr, url, NULL, NULL)
+#define virXMLParse(filename, xmlStr, url, schemafile, validate) \
+    virXMLParseHelper(VIR_FROM_THIS, filename, xmlStr, url, NULL, NULL, schemafile, validate)
 
 /**
  * virXMLParseString:
@@ -198,7 +200,7 @@ virXMLPickShellSafeComment(const char *str1,
  * Return the parsed document object, or NULL on failure.
  */
 #define virXMLParseString(xmlStr, url) \
-    virXMLParseHelper(VIR_FROM_THIS, NULL, xmlStr, url, NULL, NULL)
+    virXMLParseHelper(VIR_FROM_THIS, NULL, xmlStr, url, NULL, NULL, NULL, false)
 
 /**
  * virXMLParseFile:
@@ -209,7 +211,7 @@ virXMLPickShellSafeComment(const char *str1,
  * Return the parsed document object, or NULL on failure.
  */
 #define virXMLParseFile(filename) \
-    virXMLParseHelper(VIR_FROM_THIS, filename, NULL, NULL, NULL, NULL)
+    virXMLParseHelper(VIR_FROM_THIS, filename, NULL, NULL, NULL, NULL, NULL, false)
 
 /**
  * virXMLParseCtxt:
@@ -224,7 +226,7 @@ virXMLPickShellSafeComment(const char *str1,
  * Return the parsed document object, or NULL on failure.
  */
 #define virXMLParseCtxt(filename, xmlStr, url, pctxt) \
-    virXMLParseHelper(VIR_FROM_THIS, filename, xmlStr, url, NULL, pctxt)
+    virXMLParseHelper(VIR_FROM_THIS, filename, xmlStr, url, NULL, pctxt, NULL, false)
 
 /**
  * virXMLParseStringCtxt:
@@ -238,11 +240,11 @@ virXMLPickShellSafeComment(const char *str1,
  * Return the parsed document object, or NULL on failure.
  */
 #define virXMLParseStringCtxt(xmlStr, url, pctxt) \
-    virXMLParseHelper(VIR_FROM_THIS, NULL, xmlStr, url, NULL, pctxt)
+    virXMLParseHelper(VIR_FROM_THIS, NULL, xmlStr, url, NULL, pctxt, NULL, false)
 
 /* virXMLParseStringCtxtRoot is same as above, except it also validates root node name */
 #define virXMLParseStringCtxtRoot(xmlStr, url, rootnode, pctxt) \
-    virXMLParseHelper(VIR_FROM_THIS, NULL, xmlStr, url, rootnode, pctxt)
+    virXMLParseHelper(VIR_FROM_THIS, NULL, xmlStr, url, rootnode, pctxt, NULL, false)
 
 /**
  * virXMLParseFileCtxt:
@@ -255,7 +257,7 @@ virXMLPickShellSafeComment(const char *str1,
  * Return the parsed document object, or NULL on failure.
  */
 #define virXMLParseFileCtxt(filename, pctxt) \
-    virXMLParseHelper(VIR_FROM_THIS, filename, NULL, NULL, NULL, pctxt)
+    virXMLParseHelper(VIR_FROM_THIS, filename, NULL, NULL, NULL, pctxt, NULL, false)
 
 int
 virXMLSaveFile(const char *path,
index f7423f60fc32802eac15de0a41bf771d3abe997c..7fb97d49d963b8fb59dc600bd33d0107b3a8ecc9 100644 (file)
@@ -593,7 +593,7 @@ virVBoxSnapshotConfLoadVboxFile(const char *filePath,
 
     machineDescription = g_new0(virVBoxSnapshotConfMachine, 1);
 
-    xml = virXMLParse(filePath, NULL, NULL);
+    xml = virXMLParse(filePath, NULL, NULL, NULL, false);
     if (xml == NULL) {
         virReportError(VIR_ERR_XML_ERROR, "%s",
                        _("Unable to parse the xml"));
@@ -1230,7 +1230,7 @@ virVBoxSnapshotConfGetRWDisksPathsFromLibvirtXML(const char *filePath,
                        _("filePath is null"));
         goto cleanup;
     }
-    xml = virXMLParse(filePath, NULL, NULL);
+    xml = virXMLParse(filePath, NULL, NULL, NULL, false);
     if (xml == NULL) {
         virReportError(VIR_ERR_XML_ERROR, "%s",
                        _("Unable to parse the xml"));
@@ -1292,7 +1292,7 @@ virVBoxSnapshotConfGetRODisksPathsFromLibvirtXML(const char *filePath,
                        _("filePath is null"));
         goto cleanup;
     }
-    xml = virXMLParse(filePath, NULL, NULL);
+    xml = virXMLParse(filePath, NULL, NULL, NULL, false);
     if (xml == NULL) {
         virReportError(VIR_ERR_XML_ERROR, "%s",
                        _("Unable to parse the xml"));
index 26a3acb386a7667c4ea32934b2fcd8a6b4c1fa28..6d3a87315851df481fca45b5278b2444a13c9018 100644 (file)
@@ -4595,7 +4595,7 @@ prlsdkParseSnapshotTree(const char *treexml)
     if (*treexml == '\0')
         return snapshots;
 
-    if (!(xml = virXMLParse(NULL, treexml, _("(snapshot_tree)"))))
+    if (!(xml = virXMLParse(NULL, treexml, _("(snapshot_tree)"), NULL, false)))
         goto cleanup;
 
     root = xmlDocGetRootElement(xml);
index b552f5deed312464e880c00551595ab55ffb89ac..2754a8a78007414d9f2d177eb3b32ac19a85c17b 100644 (file)
@@ -678,7 +678,7 @@ testCompareXMLToArgv(const void *data)
     if (testCheckExclusiveFlags(info->flags) < 0)
         goto cleanup;
 
-    if (!(xml = virXMLParse(info->infile, NULL, "(domain_definition)")))
+    if (!(xml = virXMLParse(info->infile, NULL, "(domain_definition)", NULL, false)))
         goto cleanup;
 
     root = xmlDocGetRootElement(xml);