rule_data 577 include/crm/pengine/internal.h pe_rule_eval_data_t *rule_data, GHashTable *hash, rule_data 50 include/crm/pengine/rules.h pe_rule_eval_data_t *rule_data, GHashTable *hash, rule_data 61 include/crm/pengine/rules.h const char *set_name, pe_rule_eval_data_t *rule_data, rule_data 69 include/crm/pengine/rules.h gboolean pe_eval_rules(xmlNode *ruleset, pe_rule_eval_data_t *rule_data, rule_data 71 include/crm/pengine/rules.h gboolean pe_eval_expr(xmlNode *rule, pe_rule_eval_data_t *rule_data, rule_data 73 include/crm/pengine/rules.h gboolean pe_eval_subexpr(xmlNode *expr, pe_rule_eval_data_t *rule_data, rule_data 24 include/crm/pengine/rules_internal.h gboolean pe__eval_attr_expr(xmlNode *expr, pe_rule_eval_data_t *rule_data); rule_data 25 include/crm/pengine/rules_internal.h int pe__eval_date_expr(xmlNode *expr, pe_rule_eval_data_t *rule_data, rule_data 27 include/crm/pengine/rules_internal.h gboolean pe__eval_op_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data); rule_data 28 include/crm/pengine/rules_internal.h gboolean pe__eval_role_expr(xmlNode *expr, pe_rule_eval_data_t *rule_data); rule_data 29 include/crm/pengine/rules_internal.h gboolean pe__eval_rsc_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data); rule_data 100 lib/pengine/complex.c expand_parents_fixed_nvpairs(pe_resource_t * rsc, pe_rule_eval_data_t * rule_data, GHashTable * meta_hash, pe_working_set_t * data_set) rule_data 114 lib/pengine/complex.c rule_data, parent_orig_meta, NULL, FALSE, data_set); rule_data 149 lib/pengine/complex.c pe_rule_eval_data_t rule_data = { rule_data 159 lib/pengine/complex.c rule_data.node_hash = node->details->attrs; rule_data 169 lib/pengine/complex.c pe__unpack_dataset_nvpairs(rsc->xml, XML_TAG_META_SETS, &rule_data, rule_data 175 lib/pengine/complex.c expand_parents_fixed_nvpairs(rsc, &rule_data, meta_hash, data_set); rule_data 180 lib/pengine/complex.c &rule_data, meta_hash, NULL, FALSE, data_set); rule_data 193 lib/pengine/complex.c pe_rule_eval_data_t rule_data = { rule_data 203 lib/pengine/complex.c rule_data.node_hash = node->details->attrs; rule_data 206 lib/pengine/complex.c pe__unpack_dataset_nvpairs(rsc->xml, XML_TAG_ATTR_SETS, &rule_data, rule_data 216 lib/pengine/complex.c &rule_data, meta_hash, NULL, FALSE, data_set); rule_data 225 lib/pengine/complex.c pe_rule_eval_data_t rule_data = { rule_data 235 lib/pengine/complex.c &rule_data, meta_hash, NULL); rule_data 244 lib/pengine/complex.c XML_TAG_ATTR_SETS, &rule_data, meta_hash, rule_data 506 lib/pengine/complex.c pe_rule_eval_data_t rule_data = { rule_data 850 lib/pengine/complex.c pe__unpack_dataset_nvpairs((*rsc)->xml, XML_TAG_UTILIZATION, &rule_data, rule_data 42 lib/pengine/rules.c pe_rule_eval_data_t rule_data = { rule_data 51 lib/pengine/rules.c return pe_eval_rules(ruleset, &rule_data, next_change); rule_data 59 lib/pengine/rules.c pe_rule_eval_data_t rule_data = { rule_data 68 lib/pengine/rules.c return pe_eval_expr(rule, &rule_data, next_change); rule_data 92 lib/pengine/rules.c pe_rule_eval_data_t rule_data = { rule_data 101 lib/pengine/rules.c return pe_eval_subexpr(expr, &rule_data, next_change); rule_data 476 lib/pengine/rules.c pe_rule_eval_data_t *rule_data; rule_data 486 lib/pengine/rules.c if (!pe_eval_rules(pair->attr_set, unpack_data->rule_data, rule_data 492 lib/pengine/rules.c if (get_versioned_rule(pair->attr_set) && !(unpack_data->rule_data->node_hash && rule_data 493 lib/pengine/rules.c g_hash_table_lookup_extended(unpack_data->rule_data->node_hash, rule_data 513 lib/pengine/rules.c if (pe_eval_rules(pair->attr_set, unpack_data->rule_data, rule_data 585 lib/pengine/rules.c pe_rule_eval_data_t *rule_data, crm_time_t *next_change, rule_data 596 lib/pengine/rules.c .rule_data = rule_data rule_data 606 lib/pengine/rules.c pe_rule_eval_data_t *rule_data, GHashTable *hash, rule_data 611 lib/pengine/rules.c overwrite, rule_data, next_change, unpack_attr_set); rule_data 633 lib/pengine/rules.c pe_rule_eval_data_t rule_data = { rule_data 642 lib/pengine/rules.c pe_eval_nvpairs(top, xml_obj, set_name, &rule_data, hash, rule_data 649 lib/pengine/rules.c pe_rule_eval_data_t *rule_data, xmlNode *hash, rule_data 652 lib/pengine/rules.c unpack_nvpair_blocks(top, xml_obj, set_name, hash, NULL, FALSE, rule_data, rule_data 740 lib/pengine/rules.c pe_eval_rules(xmlNode *ruleset, pe_rule_eval_data_t *rule_data, crm_time_t *next_change) rule_data 749 lib/pengine/rules.c if (pe_eval_expr(rule, rule_data, next_change)) { rule_data 764 lib/pengine/rules.c pe_eval_expr(xmlNode *rule, pe_rule_eval_data_t *rule_data, crm_time_t *next_change) rule_data 784 lib/pengine/rules.c test = pe_eval_subexpr(expr, rule_data, next_change); rule_data 806 lib/pengine/rules.c pe_eval_subexpr(xmlNode *expr, pe_rule_eval_data_t *rule_data, crm_time_t *next_change) rule_data 813 lib/pengine/rules.c accept = pe_eval_expr(expr, rule_data, next_change); rule_data 820 lib/pengine/rules.c if (rule_data->node_hash != NULL) { rule_data 821 lib/pengine/rules.c accept = pe__eval_attr_expr(expr, rule_data); rule_data 826 lib/pengine/rules.c switch (pe__eval_date_expr(expr, rule_data, next_change)) { rule_data 839 lib/pengine/rules.c accept = pe__eval_role_expr(expr, rule_data); rule_data 843 lib/pengine/rules.c accept = pe__eval_rsc_expr(expr, rule_data); rule_data 847 lib/pengine/rules.c accept = pe__eval_op_expr(expr, rule_data); rule_data 852 lib/pengine/rules.c if (rule_data->node_hash && rule_data 853 lib/pengine/rules.c g_hash_table_lookup_extended(rule_data->node_hash, rule_data 855 lib/pengine/rules.c accept = pe__eval_attr_expr(expr, rule_data); rule_data 867 lib/pengine/rules.c if (rule_data->node_hash) { rule_data 868 lib/pengine/rules.c uname = g_hash_table_lookup(rule_data->node_hash, CRM_ATTR_UNAME); rule_data 1075 lib/pengine/rules.c pe__eval_attr_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data) rule_data 1098 lib/pengine/rules.c if (rule_data->match_data != NULL) { rule_data 1100 lib/pengine/rules.c if (rule_data->match_data->re != NULL) { rule_data 1101 lib/pengine/rules.c char *resolved_attr = pe_expand_re_matches(attr, rule_data->match_data->re); rule_data 1110 lib/pengine/rules.c value = expand_value_source(value, value_source, rule_data->match_data); rule_data 1113 lib/pengine/rules.c if (rule_data->node_hash != NULL) { rule_data 1114 lib/pengine/rules.c h_val = (const char *)g_hash_table_lookup(rule_data->node_hash, attr); rule_data 1136 lib/pengine/rules.c pe__eval_date_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data, crm_time_t *next_change) rule_data 1170 lib/pengine/rules.c } else if ((start != NULL) && (crm_time_compare(rule_data->now, start) < 0)) { rule_data 1173 lib/pengine/rules.c } else if ((end != NULL) && (crm_time_compare(rule_data->now, end) > 0)) { rule_data 1185 lib/pengine/rules.c rc = pe_cron_range_satisfied(rule_data->now, date_spec); rule_data 1191 lib/pengine/rules.c } else if (crm_time_compare(rule_data->now, start) > 0) { rule_data 1204 lib/pengine/rules.c } else if (crm_time_compare(rule_data->now, end) < 0) { rule_data 1218 lib/pengine/rules.c pe__eval_op_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data) { rule_data 1225 lib/pengine/rules.c if (rule_data->op_data == NULL) { rule_data 1236 lib/pengine/rules.c if (interval_s != NULL && interval != rule_data->op_data->interval) { rule_data 1237 lib/pengine/rules.c crm_trace("Interval doesn't match: %d != %d", interval, rule_data->op_data->interval); rule_data 1241 lib/pengine/rules.c if (!pcmk__str_eq(name, rule_data->op_data->op_name, pcmk__str_none)) { rule_data 1242 lib/pengine/rules.c crm_trace("Name doesn't match: %s != %s", name, rule_data->op_data->op_name); rule_data 1259 lib/pengine/rules.c pe__eval_role_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data) rule_data 1265 lib/pengine/rules.c if (rule_data->role == RSC_ROLE_UNKNOWN) { rule_data 1273 lib/pengine/rules.c if (rule_data->role > RSC_ROLE_STARTED) { rule_data 1278 lib/pengine/rules.c if ((rule_data->role > RSC_ROLE_UNKNOWN) rule_data 1279 lib/pengine/rules.c && (rule_data->role < RSC_ROLE_UNPROMOTED)) { rule_data 1284 lib/pengine/rules.c if (text2role(value) == rule_data->role) { rule_data 1290 lib/pengine/rules.c if ((rule_data->role > RSC_ROLE_UNKNOWN) rule_data 1291 lib/pengine/rules.c && (rule_data->role < RSC_ROLE_UNPROMOTED)) { rule_data 1294 lib/pengine/rules.c } else if (text2role(value) != rule_data->role) { rule_data 1302 lib/pengine/rules.c pe__eval_rsc_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data) rule_data 1310 lib/pengine/rules.c if (rule_data->rsc_data == NULL) { rule_data 1316 lib/pengine/rules.c !pcmk__str_eq(class, rule_data->rsc_data->standard, pcmk__str_none)) { rule_data 1317 lib/pengine/rules.c crm_trace("Class doesn't match: %s != %s", class, rule_data->rsc_data->standard); rule_data 1321 lib/pengine/rules.c if ((provider == NULL && rule_data->rsc_data->provider != NULL) || rule_data 1322 lib/pengine/rules.c (provider != NULL && rule_data->rsc_data->provider == NULL) || rule_data 1323 lib/pengine/rules.c !pcmk__str_eq(provider, rule_data->rsc_data->provider, pcmk__str_none)) { rule_data 1324 lib/pengine/rules.c crm_trace("Provider doesn't match: %s != %s", provider, rule_data->rsc_data->provider); rule_data 1329 lib/pengine/rules.c !pcmk__str_eq(type, rule_data->rsc_data->agent, pcmk__str_none)) { rule_data 1330 lib/pengine/rules.c crm_trace("Agent doesn't match: %s != %s", type, rule_data->rsc_data->agent); rule_data 1402 lib/pengine/rules.c pe_rule_eval_data_t rule_data = { rule_data 1412 lib/pengine/rules.c overwrite, &rule_data, NULL, unpack_attr_set); rule_data 203 lib/pengine/unpack.c pe_rule_eval_data_t rule_data = { rule_data 214 lib/pengine/unpack.c pe__unpack_dataset_nvpairs(config, XML_CIB_TAG_PROPSET, &rule_data, config_hash, rule_data 539 lib/pengine/unpack.c pe_rule_eval_data_t rule_data = { rule_data 580 lib/pengine/unpack.c pe__unpack_dataset_nvpairs(xml_obj, XML_TAG_UTILIZATION, &rule_data, rule_data 3927 lib/pengine/unpack.c pe_rule_eval_data_t rule_data = { rule_data 3957 lib/pengine/unpack.c pe__unpack_dataset_nvpairs(xml_obj, XML_TAG_ATTR_SETS, &rule_data, rule_data 529 lib/pengine/utils.c pe_rule_eval_data_t rule_data = { rule_data 540 lib/pengine/utils.c &rule_data, action->extra, NULL, rule_data 854 lib/pengine/utils.c pe_rule_eval_data_t rule_data = { rule_data 875 lib/pengine/utils.c &rule_data, action_meta, NULL, FALSE, data_set); rule_data 969 lib/pengine/utils.c pe_rule_eval_data_t rule_data = { rule_data 981 lib/pengine/utils.c pe__unpack_dataset_nvpairs(data_set->op_defaults, XML_TAG_META_SETS, &rule_data, rule_data 1003 lib/pengine/utils.c pe__unpack_dataset_nvpairs(xml_obj, XML_TAG_META_SETS, &rule_data, rule_data 1010 lib/pengine/utils.c XML_TAG_ATTR_SETS, &rule_data, rule_data 1014 lib/pengine/utils.c XML_TAG_META_SETS, &rule_data, rule_data 2336 lib/pengine/utils.c pe_rule_eval_data_t *rule_data, GHashTable *hash, rule_data 2342 lib/pengine/utils.c pe_eval_nvpairs(data_set->input, xml_obj, set_name, rule_data, hash, rule_data 92 tools/crm_rule.c pe_rule_eval_data_t rule_data = { rule_data 101 tools/crm_rule.c return pe__eval_date_expr(expr, &rule_data, next_change);