pacemaker
3.0.0-d8340737c4
Scalable High-Availability cluster resource manager
include
crm
common
digest_internal.h
Go to the documentation of this file.
1
/*
2
* Copyright 2015-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_DIGEST_INTERNAL__H
11
#define PCMK__CRM_COMMON_DIGEST_INTERNAL__H
12
13
/*
14
* Internal-only functions to create digest strings from XML
15
*/
16
17
#include <stdbool.h>
18
19
#include <libxml/tree.h>
// xmlNode
20
21
#ifdef __cplusplus
22
extern
"C"
{
23
#endif
24
25
// Digest comparison results
26
enum
pcmk__digest_result
{
27
pcmk__digest_unknown
,
// No digest available for comparison
28
pcmk__digest_match
,
// Digests match
29
pcmk__digest_mismatch
,
// Any parameter changed (potentially reloadable)
30
pcmk__digest_restart
,
// Parameters that require a restart changed
31
};
32
33
// Information needed to compare operation digests
34
typedef
struct
{
35
enum
pcmk__digest_result
rc;
// Result of digest comparison
36
xmlNode *
params_all
;
// All operation parameters
37
xmlNode *
params_secure
;
// Parameters marked private
38
xmlNode *
params_restart
;
// Parameters marked not reloadable
39
char
*
digest_all_calc
;
// Digest of params_all
40
char
*
digest_secure_calc
;
// Digest of params_secure
41
char
*
digest_restart_calc
;
// Digest of params_restart
42
}
pcmk__op_digest_t
;
43
44
char
*
pcmk__digest_on_disk_cib
(xmlNode *
input
);
45
char
*
pcmk__digest_operation
(xmlNode *
input
);
46
char
*
pcmk__digest_xml
(xmlNode *
input
,
bool
filter);
47
48
bool
pcmk__verify_digest
(xmlNode *
input
,
const
char
*expected);
49
50
#ifdef __cplusplus
51
}
52
#endif
53
54
#endif // PCMK__CRM_COMMON_DIGEST_INTERNAL__H
pcmk__op_digest_t::digest_all_calc
char * digest_all_calc
Definition:
digest_internal.h:39
pcmk__op_digest_t::params_restart
xmlNode * params_restart
Definition:
digest_internal.h:38
pcmk__op_digest_t
Definition:
digest_internal.h:34
pcmk__digest_mismatch
Definition:
digest_internal.h:29
pcmk__digest_xml
char * pcmk__digest_xml(xmlNode *input, bool filter)
Definition:
digest.c:160
pcmk__digest_match
Definition:
digest_internal.h:28
pcmk__digest_on_disk_cib
char * pcmk__digest_on_disk_cib(xmlNode *input)
Definition:
digest.c:110
pcmk__digest_result
pcmk__digest_result
Definition:
digest_internal.h:26
pcmk__op_digest_t::digest_restart_calc
char * digest_restart_calc
Definition:
digest_internal.h:41
pcmk__digest_unknown
Definition:
digest_internal.h:27
pcmk__digest_restart
Definition:
digest_internal.h:30
input
xmlNode * input
Definition:
native_find_rsc_test.c:18
pcmk__op_digest_t::params_secure
xmlNode * params_secure
Definition:
digest_internal.h:37
pcmk__digest_operation
char * pcmk__digest_operation(xmlNode *input)
Definition:
digest.c:133
pcmk__op_digest_t::digest_secure_calc
char * digest_secure_calc
Definition:
digest_internal.h:40
pcmk__verify_digest
bool pcmk__verify_digest(xmlNode *input, const char *expected)
Definition:
digest.c:200
pcmk__op_digest_t::params_all
xmlNode * params_all
Definition:
digest_internal.h:36
Generated on Wed Jan 8 2025 16:55:39 for pacemaker by
1.8.14