| 2559 | } |
| 2560 | |
| 2561 | void |
| 2562 | rsc_stonith_ordering(resource_t * rsc, action_t * stonith_op, pe_working_set_t * data_set) |
| 2563 | { |
| 2564 | gboolean is_stonith = FALSE; |
| 2565 | |
| 2566 | if (rsc->children) { |
| 2567 | GListPtr gIter = NULL; |
| 2568 | |
| 2569 | for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) { |
| 2570 | resource_t *child_rsc = (resource_t *) gIter->data; |
| 2571 | |
| 2572 | rsc_stonith_ordering(child_rsc, stonith_op, data_set); |
| 2573 | } |
| 2574 | return; |
| 2575 | } |
| 2576 | |
| 2577 | if (is_not_set(rsc->flags, pe_rsc_managed)) { |
| 2578 | pe_rsc_trace(rsc, "Skipping fencing constraints for unmanaged resource: %s", rsc->id); |
| 2579 | return; |
| 2580 | } |
| 2581 | |
| 2582 | /* Start constraints */ |
| 2583 | native_start_constraints(rsc, stonith_op, is_stonith, data_set); |
| 2584 | |
| 2585 | /* Stop constraints */ |
| 2586 | if(stonith_op) { |
| 2587 | native_stop_constraints(rsc, stonith_op, is_stonith, data_set); |
| 2588 | } |
| 2589 | } |
| 2590 | |
| 2591 | enum stack_activity { |
| 2592 | stack_stable = 0, |
no test coverage detected