expr 202 include/crm/common/logging.h # define CRM_LOG_ASSERT(expr) do { \ expr 203 include/crm/common/logging.h if (!(expr)) { \ expr 210 include/crm/common/logging.h crm_abort(__FILE__, __func__, __LINE__, #expr, \ expr 218 include/crm/common/logging.h # define CRM_CHECK(expr, failure_action) do { \ expr 219 include/crm/common/logging.h if (!(expr)) { \ expr 226 include/crm/common/logging.h crm_abort(__FILE__, __func__, __LINE__, #expr, \ expr 42 include/crm/common/results.h # define CRM_ASSERT(expr) do { \ expr 43 include/crm/common/results.h if (!(expr)) { \ expr 44 include/crm/common/results.h crm_abort(__FILE__, __func__, __LINE__, #expr, TRUE, FALSE); \ expr 36 include/crm/crm_compat.h # define __builtin_expect(expr, result) (expr) expr 39 include/crm/crm_compat.h #define __likely(expr) __builtin_expect(expr, 1) expr 41 include/crm/crm_compat.h #define __unlikely(expr) __builtin_expect(expr, 0) expr 35 include/crm/pengine/rules.h enum expression_type find_expression_type(xmlNode * expr); expr 44 include/crm/pengine/rules.h gboolean pe_test_expression(xmlNode *expr, GHashTable *node_hash, expr 73 include/crm/pengine/rules.h gboolean pe_eval_subexpr(xmlNode *expr, pe_rule_eval_data_t *rule_data, expr 44 include/crm/pengine/rules_compat.h gboolean test_expression(xmlNode *expr, GHashTable *node_hash, expr 48 include/crm/pengine/rules_compat.h gboolean pe_test_expression_re(xmlNode *expr, GHashTable *node_hash, expr 53 include/crm/pengine/rules_compat.h gboolean pe_test_expression_full(xmlNode *expr, GHashTable *node_hash, expr 24 include/crm/pengine/rules_internal.h gboolean pe__eval_attr_expr(xmlNode *expr, pe_rule_eval_data_t *rule_data); expr 25 include/crm/pengine/rules_internal.h int pe__eval_date_expr(xmlNode *expr, pe_rule_eval_data_t *rule_data, expr 27 include/crm/pengine/rules_internal.h gboolean pe__eval_op_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data); expr 28 include/crm/pengine/rules_internal.h gboolean pe__eval_role_expr(xmlNode *expr, pe_rule_eval_data_t *rule_data); expr 29 include/crm/pengine/rules_internal.h gboolean pe__eval_rsc_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data); expr 88 lib/pengine/rules.c pe_test_expression(xmlNode *expr, GHashTable *node_hash, enum rsc_role_e role, expr 101 lib/pengine/rules.c return pe_eval_subexpr(expr, &rule_data, next_change); expr 105 lib/pengine/rules.c find_expression_type(xmlNode * expr) expr 110 lib/pengine/rules.c attr = crm_element_value(expr, XML_EXPR_ATTR_ATTRIBUTE); expr 111 lib/pengine/rules.c tag = crm_element_name(expr); expr 417 lib/pengine/rules.c xmlNode * expr = NULL; expr 424 lib/pengine/rules.c for (expr = pcmk__xe_first_child(rule); expr != NULL; expr 425 lib/pengine/rules.c expr = pcmk__xe_next(expr)) { expr 427 lib/pengine/rules.c if (find_expression_type(expr) == version_expr) { expr 442 lib/pengine/rules.c xmlNode *expr = NULL; expr 456 lib/pengine/rules.c expr = pcmk__xe_first_child(rule); expr 457 lib/pengine/rules.c while (expr != NULL) { expr 458 lib/pengine/rules.c if (find_expression_type(expr) != version_expr) { expr 459 lib/pengine/rules.c xmlNode *node = expr; expr 461 lib/pengine/rules.c expr = pcmk__xe_next(expr); expr 464 lib/pengine/rules.c expr = pcmk__xe_next(expr); expr 766 lib/pengine/rules.c xmlNode *expr = NULL; expr 781 lib/pengine/rules.c for (expr = pcmk__xe_first_child(rule); expr != NULL; expr 782 lib/pengine/rules.c expr = pcmk__xe_next(expr)) { expr 784 lib/pengine/rules.c test = pe_eval_subexpr(expr, rule_data, next_change); expr 788 lib/pengine/rules.c crm_trace("Expression %s/%s passed", ID(rule), ID(expr)); expr 792 lib/pengine/rules.c crm_trace("Expression %s/%s failed", ID(rule), ID(expr)); expr 806 lib/pengine/rules.c pe_eval_subexpr(xmlNode *expr, pe_rule_eval_data_t *rule_data, crm_time_t *next_change) expr 811 lib/pengine/rules.c switch (find_expression_type(expr)) { expr 813 lib/pengine/rules.c accept = pe_eval_expr(expr, rule_data, next_change); expr 821 lib/pengine/rules.c accept = pe__eval_attr_expr(expr, rule_data); expr 826 lib/pengine/rules.c switch (pe__eval_date_expr(expr, rule_data, next_change)) { expr 839 lib/pengine/rules.c accept = pe__eval_role_expr(expr, rule_data); expr 843 lib/pengine/rules.c accept = pe__eval_rsc_expr(expr, rule_data); expr 847 lib/pengine/rules.c accept = pe__eval_op_expr(expr, rule_data); expr 855 lib/pengine/rules.c accept = pe__eval_attr_expr(expr, rule_data); expr 872 lib/pengine/rules.c ID(expr), accept ? "passed" : "failed", uname ? uname : "all nodes"); expr 1075 lib/pengine/rules.c pe__eval_attr_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data) expr 1086 lib/pengine/rules.c attr = crm_element_value(expr, XML_EXPR_ATTR_ATTRIBUTE); expr 1087 lib/pengine/rules.c op = crm_element_value(expr, XML_EXPR_ATTR_OPERATION); expr 1088 lib/pengine/rules.c value = crm_element_value(expr, XML_EXPR_ATTR_VALUE); expr 1089 lib/pengine/rules.c type = crm_element_value(expr, XML_EXPR_ATTR_TYPE); expr 1090 lib/pengine/rules.c value_source = crm_element_value(expr, XML_EXPR_ATTR_VALUE_SOURCE); expr 1136 lib/pengine/rules.c pe__eval_date_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data, crm_time_t *next_change) expr 1141 lib/pengine/rules.c const char *op = crm_element_value(expr, "operation"); expr 1149 lib/pengine/rules.c crm_trace("Testing expression: %s", ID(expr)); expr 1151 lib/pengine/rules.c duration_spec = first_named_child(expr, "duration"); expr 1152 lib/pengine/rules.c date_spec = first_named_child(expr, "date_spec"); expr 1154 lib/pengine/rules.c value = crm_element_value(expr, "start"); expr 1158 lib/pengine/rules.c value = crm_element_value(expr, "end"); expr 1218 lib/pengine/rules.c pe__eval_op_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data) { expr 1219 lib/pengine/rules.c const char *name = crm_element_value(expr, XML_NVPAIR_ATTR_NAME); expr 1220 lib/pengine/rules.c const char *interval_s = crm_element_value(expr, XML_LRM_ATTR_INTERVAL); expr 1223 lib/pengine/rules.c crm_trace("Testing op_defaults expression: %s", ID(expr)); expr 1259 lib/pengine/rules.c pe__eval_role_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data) expr 1269 lib/pengine/rules.c value = crm_element_value(expr, XML_EXPR_ATTR_VALUE); expr 1270 lib/pengine/rules.c op = crm_element_value(expr, XML_EXPR_ATTR_OPERATION); expr 1302 lib/pengine/rules.c pe__eval_rsc_expr(xmlNodePtr expr, pe_rule_eval_data_t *rule_data) expr 1304 lib/pengine/rules.c const char *class = crm_element_value(expr, XML_AGENT_ATTR_CLASS); expr 1305 lib/pengine/rules.c const char *provider = crm_element_value(expr, XML_AGENT_ATTR_PROVIDER); expr 1306 lib/pengine/rules.c const char *type = crm_element_value(expr, XML_EXPR_ATTR_TYPE); expr 1308 lib/pengine/rules.c crm_trace("Testing rsc_defaults expression: %s", ID(expr)); expr 1372 lib/pengine/rules.c test_expression(xmlNode * expr, GHashTable * node_hash, enum rsc_role_e role, crm_time_t * now) expr 1374 lib/pengine/rules.c return pe_test_expression(expr, node_hash, role, now, NULL, NULL); expr 1378 lib/pengine/rules.c 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) expr 1385 lib/pengine/rules.c return pe_test_expression(expr, node_hash, role, now, NULL, &match_data); expr 1389 lib/pengine/rules.c pe_test_expression_full(xmlNode *expr, GHashTable *node_hash, expr 1393 lib/pengine/rules.c return pe_test_expression(expr, node_hash, role, now, NULL, match_data); expr 131 tools/crm_resource_ban.c xmlNode *expr = create_xml_node(rule, XML_TAG_EXPRESSION); expr 137 tools/crm_resource_ban.c crm_xml_set_id(expr, "cli-ban-%s-on-%s-expr", rsc_id, host); expr 138 tools/crm_resource_ban.c crm_xml_add(expr, XML_EXPR_ATTR_ATTRIBUTE, CRM_ATTR_UNAME); expr 139 tools/crm_resource_ban.c crm_xml_add(expr, XML_EXPR_ATTR_OPERATION, "eq"); expr 140 tools/crm_resource_ban.c crm_xml_add(expr, XML_EXPR_ATTR_VALUE, host); expr 141 tools/crm_resource_ban.c crm_xml_add(expr, XML_EXPR_ATTR_TYPE, "string"); expr 143 tools/crm_resource_ban.c expr = create_xml_node(rule, "date_expression"); expr 144 tools/crm_resource_ban.c crm_xml_set_id(expr, "cli-ban-%s-on-%s-lifetime", rsc_id, host); expr 145 tools/crm_resource_ban.c crm_xml_add(expr, "operation", "lt"); expr 146 tools/crm_resource_ban.c crm_xml_add(expr, "end", later_s); expr 197 tools/crm_resource_ban.c xmlNode *expr = create_xml_node(rule, XML_TAG_EXPRESSION); expr 203 tools/crm_resource_ban.c crm_xml_set_id(expr, "cli-prefer-expr-%s", rsc_id); expr 204 tools/crm_resource_ban.c crm_xml_add(expr, XML_EXPR_ATTR_ATTRIBUTE, CRM_ATTR_UNAME); expr 205 tools/crm_resource_ban.c crm_xml_add(expr, XML_EXPR_ATTR_OPERATION, "eq"); expr 206 tools/crm_resource_ban.c crm_xml_add(expr, XML_EXPR_ATTR_VALUE, host); expr 207 tools/crm_resource_ban.c crm_xml_add(expr, XML_EXPR_ATTR_TYPE, "string"); expr 209 tools/crm_resource_ban.c expr = create_xml_node(rule, "date_expression"); expr 210 tools/crm_resource_ban.c crm_xml_set_id(expr, "cli-prefer-lifetime-end-%s", rsc_id); expr 211 tools/crm_resource_ban.c crm_xml_add(expr, "operation", "lt"); expr 212 tools/crm_resource_ban.c crm_xml_add(expr, "end", later_s); expr 90 tools/crm_rule.c eval_date_expression(xmlNode *expr, crm_time_t *now, crm_time_t *next_change) expr 101 tools/crm_rule.c return pe__eval_date_expr(expr, &rule_data, next_change);