n_data            311 lib/pacemaker/libpacemaker_private.h void pcmk__create_notifications(pe_resource_t *rsc, notify_data_t *n_data);
n_data            320 lib/pacemaker/libpacemaker_private.h void pcmk__free_notification_data(notify_data_t *n_data);
n_data            265 lib/pacemaker/pcmk_sched_notif.c add_notify_data_to_action_meta(notify_data_t *n_data, pe_action_t *action)
n_data            267 lib/pacemaker/pcmk_sched_notif.c     for (GSList *item = n_data->keys; item; item = item->next) {
n_data            316 lib/pacemaker/pcmk_sched_notif.c                   pe_action_t *notify_done, notify_data_t *n_data)
n_data            356 lib/pacemaker/pcmk_sched_notif.c     add_notify_data_to_action_meta(n_data, notify_action);
n_data            374 lib/pacemaker/pcmk_sched_notif.c                        notify_data_t *n_data)
n_data            379 lib/pacemaker/pcmk_sched_notif.c     notify = new_notify_action(rsc, node, n_data->post, n_data->post_done,
n_data            380 lib/pacemaker/pcmk_sched_notif.c                                n_data);
n_data            386 lib/pacemaker/pcmk_sched_notif.c     if (n_data->post_done == NULL) {
n_data            399 lib/pacemaker/pcmk_sched_notif.c         order_actions(n_data->post_done, mon, pe_order_optional);
n_data            438 lib/pacemaker/pcmk_sched_notif.c     notify_data_t *n_data = NULL;
n_data            444 lib/pacemaker/pcmk_sched_notif.c     n_data = calloc(1, sizeof(notify_data_t));
n_data            445 lib/pacemaker/pcmk_sched_notif.c     CRM_ASSERT(n_data != NULL);
n_data            447 lib/pacemaker/pcmk_sched_notif.c     n_data->action = task;
n_data            452 lib/pacemaker/pcmk_sched_notif.c         n_data->pre = new_notify_pseudo_action(rsc, action, RSC_NOTIFY, "pre");
n_data            453 lib/pacemaker/pcmk_sched_notif.c         pe__set_action_flags(n_data->pre, pe_action_runnable);
n_data            454 lib/pacemaker/pcmk_sched_notif.c         add_hash_param(n_data->pre->meta, "notify_type", "pre");
n_data            455 lib/pacemaker/pcmk_sched_notif.c         add_hash_param(n_data->pre->meta, "notify_operation", n_data->action);
n_data            458 lib/pacemaker/pcmk_sched_notif.c         n_data->pre_done = new_notify_pseudo_action(rsc, action, RSC_NOTIFIED,
n_data            460 lib/pacemaker/pcmk_sched_notif.c         pe__set_action_flags(n_data->pre_done, pe_action_runnable);
n_data            461 lib/pacemaker/pcmk_sched_notif.c         add_hash_param(n_data->pre_done->meta, "notify_type", "pre");
n_data            462 lib/pacemaker/pcmk_sched_notif.c         add_hash_param(n_data->pre_done->meta,
n_data            463 lib/pacemaker/pcmk_sched_notif.c                        "notify_operation", n_data->action);
n_data            466 lib/pacemaker/pcmk_sched_notif.c         order_actions(n_data->pre, n_data->pre_done, pe_order_optional);
n_data            467 lib/pacemaker/pcmk_sched_notif.c         order_actions(n_data->pre_done, action, pe_order_optional);
n_data            473 lib/pacemaker/pcmk_sched_notif.c         n_data->post = new_notify_pseudo_action(rsc, complete, RSC_NOTIFY,
n_data            475 lib/pacemaker/pcmk_sched_notif.c         n_data->post->priority = INFINITY;
n_data            477 lib/pacemaker/pcmk_sched_notif.c             pe__set_action_flags(n_data->post, pe_action_runnable);
n_data            479 lib/pacemaker/pcmk_sched_notif.c             pe__clear_action_flags(n_data->post, pe_action_runnable);
n_data            481 lib/pacemaker/pcmk_sched_notif.c         add_hash_param(n_data->post->meta, "notify_type", "post");
n_data            482 lib/pacemaker/pcmk_sched_notif.c         add_hash_param(n_data->post->meta, "notify_operation", n_data->action);
n_data            485 lib/pacemaker/pcmk_sched_notif.c         n_data->post_done = new_notify_pseudo_action(rsc, complete,
n_data            488 lib/pacemaker/pcmk_sched_notif.c         n_data->post_done->priority = INFINITY;
n_data            490 lib/pacemaker/pcmk_sched_notif.c             pe__set_action_flags(n_data->post_done, pe_action_runnable);
n_data            492 lib/pacemaker/pcmk_sched_notif.c             pe__clear_action_flags(n_data->post_done, pe_action_runnable);
n_data            494 lib/pacemaker/pcmk_sched_notif.c         add_hash_param(n_data->post_done->meta, "notify_type", "post");
n_data            495 lib/pacemaker/pcmk_sched_notif.c         add_hash_param(n_data->post_done->meta,
n_data            496 lib/pacemaker/pcmk_sched_notif.c                        "notify_operation", n_data->action);
n_data            499 lib/pacemaker/pcmk_sched_notif.c         order_actions(complete, n_data->post, pe_order_implies_then);
n_data            500 lib/pacemaker/pcmk_sched_notif.c         order_actions(n_data->post, n_data->post_done, pe_order_implies_then);
n_data            505 lib/pacemaker/pcmk_sched_notif.c         order_actions(n_data->pre_done, n_data->post, pe_order_optional);
n_data            507 lib/pacemaker/pcmk_sched_notif.c     return n_data;
n_data            540 lib/pacemaker/pcmk_sched_notif.c collect_resource_data(pe_resource_t *rsc, bool activity, notify_data_t *n_data)
n_data            546 lib/pacemaker/pcmk_sched_notif.c     if (n_data->allowed_nodes == NULL) {
n_data            547 lib/pacemaker/pcmk_sched_notif.c         n_data->allowed_nodes = rsc->allowed_nodes;
n_data            555 lib/pacemaker/pcmk_sched_notif.c             collect_resource_data(child, activity, n_data);
n_data            570 lib/pacemaker/pcmk_sched_notif.c             n_data->inactive = g_list_prepend(n_data->inactive, entry);
n_data            574 lib/pacemaker/pcmk_sched_notif.c             n_data->active = g_list_prepend(n_data->active, entry);
n_data            578 lib/pacemaker/pcmk_sched_notif.c             n_data->unpromoted = g_list_prepend(n_data->unpromoted, entry);
n_data            579 lib/pacemaker/pcmk_sched_notif.c             n_data->active = g_list_prepend(n_data->active,
n_data            584 lib/pacemaker/pcmk_sched_notif.c             n_data->promoted = g_list_prepend(n_data->promoted, entry);
n_data            585 lib/pacemaker/pcmk_sched_notif.c             n_data->active = g_list_prepend(n_data->active,
n_data            619 lib/pacemaker/pcmk_sched_notif.c                     n_data->start = g_list_prepend(n_data->start, entry);
n_data            622 lib/pacemaker/pcmk_sched_notif.c                     n_data->stop = g_list_prepend(n_data->stop, entry);
n_data            625 lib/pacemaker/pcmk_sched_notif.c                     n_data->promote = g_list_prepend(n_data->promote, entry);
n_data            628 lib/pacemaker/pcmk_sched_notif.c                     n_data->demote = g_list_prepend(n_data->demote, entry);
n_data            638 lib/pacemaker/pcmk_sched_notif.c #define add_notify_env(n_data, key, value) do {                         \
n_data            639 lib/pacemaker/pcmk_sched_notif.c          n_data->keys = pcmk_prepend_nvpair(n_data->keys, key, value);  \
n_data            642 lib/pacemaker/pcmk_sched_notif.c #define add_notify_env_free(n_data, key, value) do {                    \
n_data            643 lib/pacemaker/pcmk_sched_notif.c          n_data->keys = pcmk_prepend_nvpair(n_data->keys, key, value);  \
n_data            655 lib/pacemaker/pcmk_sched_notif.c add_notif_keys(pe_resource_t *rsc, notify_data_t *n_data)
n_data            664 lib/pacemaker/pcmk_sched_notif.c     n_data->stop = notify_entries_to_strings(n_data->stop,
n_data            667 lib/pacemaker/pcmk_sched_notif.c         && pcmk__str_eq(n_data->action, RSC_STOP, pcmk__str_casei)) {
n_data            670 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_stop_resource", rsc_list);
n_data            671 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_stop_uname", node_list);
n_data            673 lib/pacemaker/pcmk_sched_notif.c     if ((n_data->start != NULL)
n_data            674 lib/pacemaker/pcmk_sched_notif.c         && pcmk__str_eq(n_data->action, RSC_START, pcmk__str_none)) {
n_data            677 lib/pacemaker/pcmk_sched_notif.c     n_data->start = notify_entries_to_strings(n_data->start,
n_data            679 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_start_resource", rsc_list);
n_data            680 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_start_uname", node_list);
n_data            682 lib/pacemaker/pcmk_sched_notif.c     if ((n_data->demote != NULL)
n_data            683 lib/pacemaker/pcmk_sched_notif.c         && pcmk__str_eq(n_data->action, RSC_DEMOTE, pcmk__str_none)) {
n_data            686 lib/pacemaker/pcmk_sched_notif.c     n_data->demote = notify_entries_to_strings(n_data->demote,
n_data            688 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_demote_resource", rsc_list);
n_data            689 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_demote_uname", node_list);
n_data            691 lib/pacemaker/pcmk_sched_notif.c     if ((n_data->promote != NULL)
n_data            692 lib/pacemaker/pcmk_sched_notif.c         && pcmk__str_eq(n_data->action, RSC_PROMOTE, pcmk__str_none)) {
n_data            695 lib/pacemaker/pcmk_sched_notif.c     n_data->promote = notify_entries_to_strings(n_data->promote,
n_data            697 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_promote_resource", rsc_list);
n_data            698 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_promote_uname", node_list);
n_data            700 lib/pacemaker/pcmk_sched_notif.c     n_data->active = notify_entries_to_strings(n_data->active,
n_data            702 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_active_resource", rsc_list);
n_data            703 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_active_uname", node_list);
n_data            705 lib/pacemaker/pcmk_sched_notif.c     n_data->unpromoted = notify_entries_to_strings(n_data->unpromoted,
n_data            707 lib/pacemaker/pcmk_sched_notif.c     add_notify_env(n_data, "notify_unpromoted_resource", rsc_list);
n_data            708 lib/pacemaker/pcmk_sched_notif.c     add_notify_env(n_data, "notify_unpromoted_uname", node_list);
n_data            711 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_slave_resource", rsc_list);
n_data            712 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_slave_uname", node_list);
n_data            714 lib/pacemaker/pcmk_sched_notif.c     n_data->promoted = notify_entries_to_strings(n_data->promoted,
n_data            716 lib/pacemaker/pcmk_sched_notif.c     add_notify_env(n_data, "notify_promoted_resource", rsc_list);
n_data            717 lib/pacemaker/pcmk_sched_notif.c     add_notify_env(n_data, "notify_promoted_uname", node_list);
n_data            720 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_master_resource", rsc_list);
n_data            721 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_master_uname", node_list);
n_data            723 lib/pacemaker/pcmk_sched_notif.c     n_data->inactive = notify_entries_to_strings(n_data->inactive,
n_data            725 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_inactive_resource", rsc_list);
n_data            727 lib/pacemaker/pcmk_sched_notif.c     nodes = g_hash_table_get_values(n_data->allowed_nodes);
n_data            736 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_available_uname", node_list);
n_data            742 lib/pacemaker/pcmk_sched_notif.c         add_notify_env_free(n_data, "notify_all_hosts", metal_list);
n_data            746 lib/pacemaker/pcmk_sched_notif.c     add_notify_env_free(n_data, "notify_all_uname", node_list);
n_data            748 lib/pacemaker/pcmk_sched_notif.c     if (required && (n_data->pre != NULL)) {
n_data            749 lib/pacemaker/pcmk_sched_notif.c         pe__clear_action_flags(n_data->pre, pe_action_optional);
n_data            750 lib/pacemaker/pcmk_sched_notif.c         pe__clear_action_flags(n_data->pre_done, pe_action_optional);
n_data            753 lib/pacemaker/pcmk_sched_notif.c     if (required && (n_data->post != NULL)) {
n_data            754 lib/pacemaker/pcmk_sched_notif.c         pe__clear_action_flags(n_data->post, pe_action_optional);
n_data            755 lib/pacemaker/pcmk_sched_notif.c         pe__clear_action_flags(n_data->post_done, pe_action_optional);
n_data            789 lib/pacemaker/pcmk_sched_notif.c create_notify_actions(pe_resource_t *rsc, notify_data_t *n_data)
n_data            794 lib/pacemaker/pcmk_sched_notif.c     enum action_tasks task = text2task(n_data->action);
n_data            798 lib/pacemaker/pcmk_sched_notif.c         g_list_foreach(rsc->children, (GFunc) create_notify_actions, n_data);
n_data            812 lib/pacemaker/pcmk_sched_notif.c                     add_notify_data_to_action_meta(n_data, op);
n_data            823 lib/pacemaker/pcmk_sched_notif.c             if (n_data->start == NULL) {
n_data            825 lib/pacemaker/pcmk_sched_notif.c                              rsc->id, n_data->action);
n_data            831 lib/pacemaker/pcmk_sched_notif.c             if (n_data->promote == NULL) {
n_data            833 lib/pacemaker/pcmk_sched_notif.c                              rsc->id, n_data->action);
n_data            839 lib/pacemaker/pcmk_sched_notif.c             if (n_data->demote == NULL) {
n_data            841 lib/pacemaker/pcmk_sched_notif.c                              rsc->id, n_data->action);
n_data            852 lib/pacemaker/pcmk_sched_notif.c                  rsc->id, n_data->action);
n_data            872 lib/pacemaker/pcmk_sched_notif.c             new_notify_action(rsc, current_node, n_data->pre,
n_data            873 lib/pacemaker/pcmk_sched_notif.c                               n_data->pre_done, n_data);
n_data            877 lib/pacemaker/pcmk_sched_notif.c                 new_post_notify_action(rsc, current_node, n_data);
n_data            908 lib/pacemaker/pcmk_sched_notif.c             new_notify_action(rsc, rsc->allocated_to, n_data->pre,
n_data            909 lib/pacemaker/pcmk_sched_notif.c                               n_data->pre_done, n_data);
n_data            911 lib/pacemaker/pcmk_sched_notif.c         new_post_notify_action(rsc, rsc->allocated_to, n_data);
n_data            923 lib/pacemaker/pcmk_sched_notif.c pcmk__create_notifications(pe_resource_t *rsc, notify_data_t *n_data)
n_data            925 lib/pacemaker/pcmk_sched_notif.c     if ((rsc == NULL) || (n_data == NULL)) {
n_data            928 lib/pacemaker/pcmk_sched_notif.c     collect_resource_data(rsc, true, n_data);
n_data            929 lib/pacemaker/pcmk_sched_notif.c     add_notif_keys(rsc, n_data);
n_data            930 lib/pacemaker/pcmk_sched_notif.c     create_notify_actions(rsc, n_data);
n_data            940 lib/pacemaker/pcmk_sched_notif.c pcmk__free_notification_data(notify_data_t *n_data)
n_data            942 lib/pacemaker/pcmk_sched_notif.c     if (n_data == NULL) {
n_data            945 lib/pacemaker/pcmk_sched_notif.c     g_list_free_full(n_data->stop, free);
n_data            946 lib/pacemaker/pcmk_sched_notif.c     g_list_free_full(n_data->start, free);
n_data            947 lib/pacemaker/pcmk_sched_notif.c     g_list_free_full(n_data->demote, free);
n_data            948 lib/pacemaker/pcmk_sched_notif.c     g_list_free_full(n_data->promote, free);
n_data            949 lib/pacemaker/pcmk_sched_notif.c     g_list_free_full(n_data->promoted, free);
n_data            950 lib/pacemaker/pcmk_sched_notif.c     g_list_free_full(n_data->unpromoted, free);
n_data            951 lib/pacemaker/pcmk_sched_notif.c     g_list_free_full(n_data->active, free);
n_data            952 lib/pacemaker/pcmk_sched_notif.c     g_list_free_full(n_data->inactive, free);
n_data            953 lib/pacemaker/pcmk_sched_notif.c     pcmk_free_nvpairs(n_data->keys);
n_data            954 lib/pacemaker/pcmk_sched_notif.c     free(n_data);
n_data            975 lib/pacemaker/pcmk_sched_notif.c     notify_data_t *n_data;
n_data            978 lib/pacemaker/pcmk_sched_notif.c     n_data = pcmk__clone_notif_pseudo_ops(rsc, RSC_STOP, NULL, stonith_op);
n_data            979 lib/pacemaker/pcmk_sched_notif.c     collect_resource_data(rsc, false, n_data);
n_data            980 lib/pacemaker/pcmk_sched_notif.c     add_notify_env(n_data, "notify_stop_resource", rsc->id);
n_data            981 lib/pacemaker/pcmk_sched_notif.c     add_notify_env(n_data, "notify_stop_uname", stop->node->details->uname);
n_data            982 lib/pacemaker/pcmk_sched_notif.c     create_notify_actions(uber_parent(rsc), n_data);
n_data            983 lib/pacemaker/pcmk_sched_notif.c     pcmk__free_notification_data(n_data);