1
2
3
4
5
6
7
8
9
10 #ifndef PCMK__CRM_COMMON_NVPAIR_INTERNAL__H
11 #define PCMK__CRM_COMMON_NVPAIR_INTERNAL__H
12
13 #include <glib.h>
14 #include <libxml/tree.h>
15
16 #include <crm/common/rules.h>
17 #include <crm/common/iso8601.h>
18 #include <crm/common/strings_internal.h>
19
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23
24
25 typedef struct unpack_data_s {
26 GHashTable *values;
27 const char *first_id;
28 pcmk_rule_input_t rule_input;
29
30
31
32
33
34
35
36 bool overwrite;
37
38
39 crm_time_t *next_change;
40 } pcmk__nvpair_unpack_t;
41
42 gint pcmk__cmp_nvpair_blocks(gconstpointer a, gconstpointer b,
43 gpointer user_data);
44
45
46
47
48
49
50
51
52
53
54 #define pcmk__insert_meta(obj, name, value) do { \
55 if (pcmk__str_eq((value), "#default", pcmk__str_casei)) { \
56 \
57 pcmk__config_warn("Support for setting meta-attributes " \
58 "(such as %s) to the explicit value " \
59 "'#default' is deprecated and will be " \
60 "removed in a future release", (name)); \
61 } else if ((value) != NULL) { \
62 pcmk__insert_dup((obj)->meta, (name), (value)); \
63 } \
64 } while (0)
65
66 #ifdef __cplusplus
67 }
68 #endif
69
70 #endif