pacemaker  2.1.8-3980678f03
Scalable High-Availability cluster resource manager
digests_internal.h
Go to the documentation of this file.
1 /*
2  * Copyright 2004-2024 the Pacemaker project contributors
3  *
4  * The version control history for this file may have further details.
5  *
6  * This source code is licensed under the GNU Lesser General Public License
7  * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
8  */
9 
10 #ifndef PCMK__CRM_COMMON_DIGESTS_INTERNAL__H
11 #define PCMK__CRM_COMMON_DIGESTS_INTERNAL__H
12 
13 #include <libxml/tree.h> // xmlNode
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 // Digest comparison results
21  pcmk__digest_unknown, // No digest available for comparison
22  pcmk__digest_match, // Digests match
23  pcmk__digest_mismatch, // Any parameter changed (potentially reloadable)
24  pcmk__digest_restart, // Parameters that require a restart changed
25 };
26 
27 // Information needed to compare operation digests
28 typedef struct {
29  enum pcmk__digest_result rc; // Result of digest comparison
30  xmlNode *params_all; // All operation parameters
31  xmlNode *params_secure; // Parameters marked private
32  xmlNode *params_restart; // Parameters marked not reloadable
33  char *digest_all_calc; // Digest of params_all
34  char *digest_secure_calc; // Digest of params_secure
35  char *digest_restart_calc; // Digest of params_restart
37 
38 bool pcmk__verify_digest(xmlNode *input, const char *expected);
39 
40 #ifdef __cplusplus
41 }
42 #endif
43 
44 #endif // PCMK__CRM_COMMON_DIGESTS_INTERNAL__H
xmlNode * params_restart
pcmk__digest_result
xmlNode * input
bool pcmk__verify_digest(xmlNode *input, const char *expected)
Definition: digest.c:200