pacemaker
2.1.9-49aab99839
Scalable High-Availability cluster resource manager
|
#include <crm_internal.h>
#include <glib.h>
#include <crm/crm.h>
#include <crm/common/xml.h>
#include <crm/pengine/rules.h>
#include <crm/common/iso8601_internal.h>
#include <crm/common/nvpair_internal.h>
#include <crm/common/rules_internal.h>
#include <crm/common/xml_internal.h>
#include <crm/pengine/internal.h>
#include <crm/pengine/rules_internal.h>
#include <sys/types.h>
#include <regex.h>
#include <crm/pengine/rules_compat.h>
Go to the source code of this file.
Functions | |
CRM_TRACE_INIT_DATA (pe_rules) | |
void | pe_eval_nvpairs (xmlNode *top, const xmlNode *xml_obj, const char *set_name, const pe_rule_eval_data_t *rule_data, GHashTable *hash, const char *always_first, gboolean overwrite, crm_time_t *next_change) |
Extract nvpair blocks contained by an XML element into a hash table. More... | |
void | pe_unpack_nvpairs (xmlNode *top, const xmlNode *xml_obj, const char *set_name, GHashTable *node_hash, GHashTable *hash, const char *always_first, gboolean overwrite, crm_time_t *now, crm_time_t *next_change) |
Extract nvpair blocks contained by an XML element into a hash table. More... | |
gboolean | pe_eval_rules (xmlNode *ruleset, const pe_rule_eval_data_t *rule_data, crm_time_t *next_change) |
gboolean | pe_evaluate_rules (xmlNode *ruleset, GHashTable *node_hash, crm_time_t *now, crm_time_t *next_change) |
gboolean | pe_test_rule (xmlNode *rule, GHashTable *node_hash, enum rsc_role_e role, crm_time_t *now, crm_time_t *next_change, pe_match_data_t *match_data) |
gboolean | test_ruleset (xmlNode *ruleset, GHashTable *node_hash, crm_time_t *now) |
gboolean | test_rule (xmlNode *rule, GHashTable *node_hash, enum rsc_role_e role, crm_time_t *now) |
gboolean | pe_test_rule_re (xmlNode *rule, GHashTable *node_hash, enum rsc_role_e role, crm_time_t *now, pe_re_match_data_t *re_match_data) |
gboolean | pe_test_rule_full (xmlNode *rule, GHashTable *node_hash, enum rsc_role_e role, crm_time_t *now, pe_match_data_t *match_data) |
gboolean | pe_test_expression (xmlNode *expr, GHashTable *node_hash, enum rsc_role_e role, crm_time_t *now, crm_time_t *next_change, pe_match_data_t *match_data) |
gboolean | test_expression (xmlNode *expr, GHashTable *node_hash, enum rsc_role_e role, crm_time_t *now) |
gboolean | pe_test_expression_re (xmlNode *expr, GHashTable *node_hash, enum rsc_role_e role, crm_time_t *now, pe_re_match_data_t *re_match_data) |
gboolean | pe_test_expression_full (xmlNode *expr, GHashTable *node_hash, enum rsc_role_e role, crm_time_t *now, pe_match_data_t *match_data) |
gboolean | pe_eval_expr (xmlNode *rule, const pe_rule_eval_data_t *rule_data, crm_time_t *next_change) |
gboolean | pe_eval_subexpr (xmlNode *expr, const pe_rule_eval_data_t *rule_data, crm_time_t *next_change) |
void | unpack_instance_attributes (xmlNode *top, xmlNode *xml_obj, const char *set_name, GHashTable *node_hash, GHashTable *hash, const char *always_first, gboolean overwrite, crm_time_t *now) |
enum expression_type | find_expression_type (xmlNode *expr) |
char * | pe_expand_re_matches (const char *string, const pe_re_match_data_t *match_data) |
CRM_TRACE_INIT_DATA | ( | pe_rules | ) |
enum expression_type find_expression_type | ( | xmlNode * | expr | ) |
gboolean pe_eval_expr | ( | xmlNode * | rule, |
const pe_rule_eval_data_t * | rule_data, | ||
crm_time_t * | next_change | ||
) |
void pe_eval_nvpairs | ( | xmlNode * | top, |
const xmlNode * | xml_obj, | ||
const char * | set_name, | ||
const pe_rule_eval_data_t * | rule_data, | ||
GHashTable * | hash, | ||
const char * | always_first, | ||
gboolean | overwrite, | ||
crm_time_t * | next_change | ||
) |
Extract nvpair blocks contained by an XML element into a hash table.
[in,out] | top | Ignored |
[in] | xml_obj | XML element containing blocks of nvpair elements |
[in] | set_name | If not NULL, only use blocks of this element |
[in] | rule_data | Matching parameters to use when unpacking |
[out] | hash | Where to store extracted name/value pairs |
[in] | always_first | If not NULL, process block with this ID first |
[in] | overwrite | Whether to replace existing values with same name |
[out] | next_change | If not NULL, set to when evaluation will change |
gboolean pe_eval_rules | ( | xmlNode * | ruleset, |
const pe_rule_eval_data_t * | rule_data, | ||
crm_time_t * | next_change | ||
) |
gboolean pe_eval_subexpr | ( | xmlNode * | expr, |
const pe_rule_eval_data_t * | rule_data, | ||
crm_time_t * | next_change | ||
) |
gboolean pe_evaluate_rules | ( | xmlNode * | ruleset, |
GHashTable * | node_hash, | ||
crm_time_t * | now, | ||
crm_time_t * | next_change | ||
) |
char* pe_expand_re_matches | ( | const char * | string, |
const pe_re_match_data_t * | match_data | ||
) |
gboolean pe_test_expression | ( | xmlNode * | expr, |
GHashTable * | node_hash, | ||
enum rsc_role_e | role, | ||
crm_time_t * | now, | ||
crm_time_t * | next_change, | ||
pe_match_data_t * | match_data | ||
) |
gboolean pe_test_expression_full | ( | xmlNode * | expr, |
GHashTable * | node_hash, | ||
enum rsc_role_e | role, | ||
crm_time_t * | now, | ||
pe_match_data_t * | match_data | ||
) |
gboolean pe_test_expression_re | ( | xmlNode * | expr, |
GHashTable * | node_hash, | ||
enum rsc_role_e | role, | ||
crm_time_t * | now, | ||
pe_re_match_data_t * | re_match_data | ||
) |
gboolean pe_test_rule | ( | xmlNode * | rule, |
GHashTable * | node_hash, | ||
enum rsc_role_e | role, | ||
crm_time_t * | now, | ||
crm_time_t * | next_change, | ||
pe_match_data_t * | match_data | ||
) |
gboolean pe_test_rule_full | ( | xmlNode * | rule, |
GHashTable * | node_hash, | ||
enum rsc_role_e | role, | ||
crm_time_t * | now, | ||
pe_match_data_t * | match_data | ||
) |
gboolean pe_test_rule_re | ( | xmlNode * | rule, |
GHashTable * | node_hash, | ||
enum rsc_role_e | role, | ||
crm_time_t * | now, | ||
pe_re_match_data_t * | re_match_data | ||
) |
void pe_unpack_nvpairs | ( | xmlNode * | top, |
const xmlNode * | xml_obj, | ||
const char * | set_name, | ||
GHashTable * | node_hash, | ||
GHashTable * | hash, | ||
const char * | always_first, | ||
gboolean | overwrite, | ||
crm_time_t * | now, | ||
crm_time_t * | next_change | ||
) |
Extract nvpair blocks contained by an XML element into a hash table.
[in,out] | top | Ignored |
[in] | xml_obj | XML element containing blocks of nvpair elements |
[in] | set_name | Element name to identify nvpair blocks |
[in] | node_hash | Node attributes to use when evaluating rules |
[out] | hash | Where to store extracted name/value pairs |
[in] | always_first | If not NULL, process block with this ID first |
[in] | overwrite | Whether to replace existing values with same name |
[in] | now | Time to use when evaluating rules |
[out] | next_change | If not NULL, set to when evaluation will change |
gboolean test_expression | ( | xmlNode * | expr, |
GHashTable * | node_hash, | ||
enum rsc_role_e | role, | ||
crm_time_t * | now | ||
) |
gboolean test_rule | ( | xmlNode * | rule, |
GHashTable * | node_hash, | ||
enum rsc_role_e | role, | ||
crm_time_t * | now | ||
) |
gboolean test_ruleset | ( | xmlNode * | ruleset, |
GHashTable * | node_hash, | ||
crm_time_t * | now | ||
) |
void unpack_instance_attributes | ( | xmlNode * | top, |
xmlNode * | xml_obj, | ||
const char * | set_name, | ||
GHashTable * | node_hash, | ||
GHashTable * | hash, | ||
const char * | always_first, | ||
gboolean | overwrite, | ||
crm_time_t * | now | ||
) |