summaryrefslogtreecommitdiffstats
path: root/include/crm/common/schemas_internal.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/crm/common/schemas_internal.h')
-rw-r--r--include/crm/common/schemas_internal.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/include/crm/common/schemas_internal.h b/include/crm/common/schemas_internal.h
new file mode 100644
index 0000000..0104016
--- /dev/null
+++ b/include/crm/common/schemas_internal.h
@@ -0,0 +1,37 @@
+/*
+ * Copyright 2006-2024 the Pacemaker project contributors
+ *
+ * The version control history for this file may have further details.
+ *
+ * This source code is licensed under the GNU Lesser General Public License
+ * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
+ */
+
+#ifndef PCMK__SCHEMAS_INTERNAL__H
+#define PCMK__SCHEMAS_INTERNAL__H
+
+#include <glib.h> // GList, gboolean
+#include <libxml/tree.h> // xmlNode, xmlRelaxNGValidityErrorFunc
+
+void crm_schema_init(void);
+void crm_schema_cleanup(void);
+
+void pcmk__load_schemas_from_dir(const char *dir);
+void pcmk__sort_schemas(void);
+GList *pcmk__schema_files_later_than(const char *name);
+void pcmk__build_schema_xml_node(xmlNode *parent, const char *name,
+ GList **already_included);
+const char *pcmk__remote_schema_dir(void);
+GList *pcmk__get_schema(const char *name);
+const char *pcmk__highest_schema_name(void);
+int pcmk__cmp_schemas_by_name(const char *schema1_name,
+ const char *schema2_name);
+bool pcmk__validate_xml(xmlNode *xml_blob, const char *validation,
+ xmlRelaxNGValidityErrorFunc error_handler,
+ void *error_handler_context);
+bool pcmk__configured_schema_validates(xmlNode *xml);
+int pcmk__update_schema(xmlNode **xml, const char *max_schema_name,
+ bool transform, bool to_logs);
+void pcmk__warn_if_schema_deprecated(const char *schema);
+
+#endif // PCMK__SCHEMAS_INTERNAL__H