pacemaker  2.0.3-4b1f869f0f
Scalable High-Availability cluster resource manager
unpack.h
Go to the documentation of this file.
1 /*
2  * Copyright 2004-2019 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 PENGINE_UNPACK__H
11 # define PENGINE_UNPACK__H
12 
13 extern gboolean unpack_remote_nodes(xmlNode * xml_resources, pe_working_set_t * data_set);
14 
15 extern gboolean unpack_resources(xmlNode * xml_resources, pe_working_set_t * data_set);
16 
17 extern gboolean unpack_config(xmlNode * config, pe_working_set_t * data_set);
18 
19 extern gboolean unpack_nodes(xmlNode * xml_nodes, pe_working_set_t * data_set);
20 
21 extern gboolean unpack_tags(xmlNode * xml_tags, pe_working_set_t * data_set);
22 
23 extern gboolean unpack_status(xmlNode * status, pe_working_set_t * data_set);
24 
25 extern gint sort_op_by_callid(gconstpointer a, gconstpointer b);
26 
27 extern gboolean unpack_lrm_resources(node_t * node, xmlNode * lrm_state,
28  pe_working_set_t * data_set);
29 
30 extern gboolean determine_online_status(xmlNode * node_state, node_t * this_node,
31  pe_working_set_t * data_set);
32 
33 // Some warnings we don't want to print every transition
34 
36  pe_wo_blind = 0x0001,
38  pe_wo_role_after = 0x0004,
39  pe_wo_poweroff = 0x0008,
43 };
44 
45 extern uint32_t pe_wo;
46 
47 #define pe_warn_once(pe_wo_bit, fmt...) do { \
48  if (is_not_set(pe_wo, pe_wo_bit)) { \
49  if (pe_wo_bit == pe_wo_blind) { \
50  crm_warn(fmt); \
51  } else { \
52  pe_warn(fmt); \
53  } \
54  set_bit(pe_wo, pe_wo_bit); \
55  } \
56  } while (0);
57 
58 #endif
pe_warn_once_e
pe_warn_once_e
Definition: unpack.h:35
unpack_config
gboolean unpack_config(xmlNode *config, pe_working_set_t *data_set)
Definition: unpack.c:179
pe_wo_neg_threshold
@ pe_wo_neg_threshold
Definition: unpack.h:42
sort_op_by_callid
gint sort_op_by_callid(gconstpointer a, gconstpointer b)
Definition: utils.c:1668
pe_wo_poweroff
@ pe_wo_poweroff
Definition: unpack.h:39
unpack_status
gboolean unpack_status(xmlNode *status, pe_working_set_t *data_set)
Definition: unpack.c:1099
unpack_resources
gboolean unpack_resources(xmlNode *xml_resources, pe_working_set_t *data_set)
Definition: unpack.c:749
pe_wo_order_score
@ pe_wo_order_score
Definition: unpack.h:41
pe_wo_require_all
@ pe_wo_require_all
Definition: unpack.h:40
unpack_nodes
gboolean unpack_nodes(xmlNode *xml_nodes, pe_working_set_t *data_set)
Definition: unpack.c:523
pe_wo_role_after
@ pe_wo_role_after
Definition: unpack.h:38
pe_wo_blind
@ pe_wo_blind
Definition: unpack.h:36
pe_working_set_s
Definition: pe_types.h:118
unpack_lrm_resources
gboolean unpack_lrm_resources(node_t *node, xmlNode *lrm_state, pe_working_set_t *data_set)
Definition: unpack.c:2353
unpack_tags
gboolean unpack_tags(xmlNode *xml_tags, pe_working_set_t *data_set)
Definition: unpack.c:811
unpack_remote_nodes
gboolean unpack_remote_nodes(xmlNode *xml_resources, pe_working_set_t *data_set)
Definition: unpack.c:612
pe_wo
uint32_t pe_wo
Definition: unpack.c:51
pe_wo_restart_type
@ pe_wo_restart_type
Definition: unpack.h:37
pe_node_s
Definition: pe_types.h:217
determine_online_status
gboolean determine_online_status(xmlNode *node_state, node_t *this_node, pe_working_set_t *data_set)
Definition: unpack.c:1430