device 200 daemons/fenced/fenced_cib.c stonith_device_t *device = NULL; device 208 daemons/fenced/fenced_cib.c while (g_hash_table_iter_next(&iter, NULL, (void **)&device)) { device 209 daemons/fenced/fenced_cib.c if (device->cib_registered) { device 210 daemons/fenced/fenced_cib.c device->dirty = TRUE; device 223 daemons/fenced/fenced_cib.c while (g_hash_table_iter_next(&iter, NULL, (void **)&device)) { device 224 daemons/fenced/fenced_cib.c if (device->dirty) { device 71 daemons/fenced/fenced_commands.c static void search_devices_record_result(struct device_search_s *search, const char *device, device 75 daemons/fenced/fenced_commands.c static void read_action_metadata(stonith_device_t *device); device 99 daemons/fenced/fenced_commands.c char *device; device 121 daemons/fenced/fenced_commands.c is_action_required(const char *action, const stonith_device_t *device) device 123 daemons/fenced/fenced_commands.c return (device != NULL) && device->automatic_unfencing device 128 daemons/fenced/fenced_commands.c get_action_delay_max(const stonith_device_t *device, const char *action) device 137 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, PCMK_STONITH_DELAY_MAX); device 147 daemons/fenced/fenced_commands.c get_action_delay_base(const stonith_device_t *device, const char *action, device 157 daemons/fenced/fenced_commands.c hash_value = g_hash_table_lookup(device->params, PCMK_STONITH_DELAY_BASE); device 213 daemons/fenced/fenced_commands.c get_action_timeout(const stonith_device_t *device, const char *action, device 216 daemons/fenced/fenced_commands.c if (action && device && device->params) { device 224 daemons/fenced/fenced_commands.c && !pcmk_is_set(device->flags, st_device_supports_reboot)) { device 226 daemons/fenced/fenced_commands.c device->id); device 232 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, buffer); device 252 daemons/fenced/fenced_commands.c if ((cmd == NULL) || (cmd->device == NULL) || (device_list == NULL)) { device 255 daemons/fenced/fenced_commands.c return g_hash_table_lookup(device_list, cmd->device); device 272 daemons/fenced/fenced_commands.c stonith_device_t *device = g_hash_table_lookup(device_list, device_id); device 274 daemons/fenced/fenced_commands.c if ((device != NULL) && (device->params != NULL)) { device 275 daemons/fenced/fenced_commands.c action = g_hash_table_lookup(device->params, "pcmk_reboot_action"); device 293 daemons/fenced/fenced_commands.c stonith_device_t *device = g_hash_table_lookup(device_list, device_id); device 295 daemons/fenced/fenced_commands.c if (device != NULL) { device 296 daemons/fenced/fenced_commands.c return pcmk_is_set(device->flags, st_device_supports_on); device 316 daemons/fenced/fenced_commands.c free(cmd->device); device 380 daemons/fenced/fenced_commands.c cmd->device = crm_element_value_copy(op, PCMK__XA_ST_DEVICE_ID); device 391 daemons/fenced/fenced_commands.c get_action_limit(stonith_device_t * device) device 396 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, PCMK_STONITH_ACTION_LIMIT); device 406 daemons/fenced/fenced_commands.c get_active_cmds(stonith_device_t * device) device 412 daemons/fenced/fenced_commands.c CRM_CHECK(device != NULL, return 0); device 419 daemons/fenced/fenced_commands.c if (cmd->active_on == device) { device 431 daemons/fenced/fenced_commands.c stonith_device_t * device = device 437 daemons/fenced/fenced_commands.c pcmk__assert(device != NULL); device 441 daemons/fenced/fenced_commands.c pcmk__s(cmd->target, ""), device->id, cmd->timeout); device 442 daemons/fenced/fenced_commands.c cmd->active_on = device; device 448 daemons/fenced/fenced_commands.c stonith_device_t *device = data; device 451 daemons/fenced/fenced_commands.c switch (get_agent_metadata(device->agent, &device->agent_metadata)) { device 453 daemons/fenced/fenced_commands.c if (device->agent_metadata) { device 454 daemons/fenced/fenced_commands.c read_action_metadata(device); device 455 daemons/fenced/fenced_commands.c stonith__device_parameter_flags(&(device->flags), device->id, device 456 daemons/fenced/fenced_commands.c device->agent_metadata); device 461 daemons/fenced/fenced_commands.c period_ms = pcmk__mainloop_timer_get_period(device->timer); device 463 daemons/fenced/fenced_commands.c mainloop_timer_set_period(device->timer, 2 * period_ms); device 493 daemons/fenced/fenced_commands.c stonith_device_execute(stonith_device_t * device) device 505 daemons/fenced/fenced_commands.c CRM_CHECK(device != NULL, return FALSE); device 507 daemons/fenced/fenced_commands.c active_cmds = get_active_cmds(device); device 508 daemons/fenced/fenced_commands.c action_limit = get_action_limit(device); device 511 daemons/fenced/fenced_commands.c device->id, action_limit, active_cmds, device 516 daemons/fenced/fenced_commands.c for (gIter = device->pending_ops; gIter != NULL; gIter = gIterNext) { device 527 daemons/fenced/fenced_commands.c device->id, pending_op->start_delay); device 531 daemons/fenced/fenced_commands.c device->pending_ops = g_list_remove_link(device->pending_ops, gIter); device 539 daemons/fenced/fenced_commands.c crm_trace("No actions using %s are needed", device->id); device 543 daemons/fenced/fenced_commands.c if (pcmk__str_any_of(device->agent, STONITH_WATCHDOG_AGENT, device 558 daemons/fenced/fenced_commands.c exec_rc = pcmk__substitute_secrets(device->id, device->params); device 563 daemons/fenced/fenced_commands.c device->id, pcmk_rc_str(exec_rc)); device 567 daemons/fenced/fenced_commands.c device->id, pcmk_rc_str(exec_rc)); device 577 daemons/fenced/fenced_commands.c && !pcmk_is_set(device->flags, st_device_supports_reboot)) { device 582 daemons/fenced/fenced_commands.c pcmk__s(cmd->target, ""), device->id, device->agent); device 586 daemons/fenced/fenced_commands.c if (pcmk_is_set(device->flags, st_device_supports_parameter_port)) { device 589 daemons/fenced/fenced_commands.c } else if (pcmk_is_set(device->flags, st_device_supports_parameter_plug)) { device 593 daemons/fenced/fenced_commands.c action = stonith__action_create(device->agent, action_str, cmd->target, device 595 daemons/fenced/fenced_commands.c device->params, device->aliases, host_arg); device 599 daemons/fenced/fenced_commands.c cmd->activating_on = device; device 612 daemons/fenced/fenced_commands.c if (device->pending_ops) { device 613 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 628 daemons/fenced/fenced_commands.c stonith_device_t *device = cmd_device(cmd); device 631 daemons/fenced/fenced_commands.c if (device) { device 632 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 639 daemons/fenced/fenced_commands.c schedule_stonith_command(async_command_t * cmd, stonith_device_t * device) device 646 daemons/fenced/fenced_commands.c CRM_CHECK(device != NULL, return); device 648 daemons/fenced/fenced_commands.c if (cmd->device) { device 649 daemons/fenced/fenced_commands.c free(cmd->device); device 652 daemons/fenced/fenced_commands.c if (device->include_nodeid && (cmd->target != NULL)) { device 660 daemons/fenced/fenced_commands.c cmd->device = pcmk__str_copy(device->id); device 661 daemons/fenced/fenced_commands.c cmd->timeout = get_action_timeout(device, cmd->action, cmd->default_timeout); device 669 daemons/fenced/fenced_commands.c device->id, cmd->origin, cmd->remote_op_id, cmd->timeout); device 675 daemons/fenced/fenced_commands.c device->id, cmd->client, cmd->timeout); device 678 daemons/fenced/fenced_commands.c device->pending_ops = g_list_append(device->pending_ops, cmd); device 679 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 686 daemons/fenced/fenced_commands.c delay_max = get_action_delay_max(device, cmd->action); device 687 daemons/fenced/fenced_commands.c delay_base = get_action_delay_base(device, cmd->action, cmd->target); device 695 daemons/fenced/fenced_commands.c delay_base, delay_max, cmd->action, device->id); device 711 daemons/fenced/fenced_commands.c device->id, cmd->start_delay, cmd->timeout, device 722 daemons/fenced/fenced_commands.c stonith_device_t *device = data; device 724 daemons/fenced/fenced_commands.c g_hash_table_destroy(device->params); device 725 daemons/fenced/fenced_commands.c g_hash_table_destroy(device->aliases); device 727 daemons/fenced/fenced_commands.c for (gIter = device->pending_ops; gIter != NULL; gIter = gIter->next) { device 730 daemons/fenced/fenced_commands.c crm_warn("Removal of device '%s' purged operation '%s'", device->id, cmd->action); device 734 daemons/fenced/fenced_commands.c g_list_free(device->pending_ops); device 736 daemons/fenced/fenced_commands.c g_list_free_full(device->targets, free); device 738 daemons/fenced/fenced_commands.c if (device->timer) { device 739 daemons/fenced/fenced_commands.c mainloop_timer_stop(device->timer); device 740 daemons/fenced/fenced_commands.c mainloop_timer_del(device->timer); device 743 daemons/fenced/fenced_commands.c mainloop_destroy_trigger(device->work); device 745 daemons/fenced/fenced_commands.c pcmk__xml_free(device->agent_metadata); device 746 daemons/fenced/fenced_commands.c free(device->namespace); device 747 daemons/fenced/fenced_commands.c if (device->on_target_actions != NULL) { device 748 daemons/fenced/fenced_commands.c g_string_free(device->on_target_actions, TRUE); device 750 daemons/fenced/fenced_commands.c free(device->agent); device 751 daemons/fenced/fenced_commands.c free(device->id); device 752 daemons/fenced/fenced_commands.c free(device); device 926 daemons/fenced/fenced_commands.c read_action_metadata(stonith_device_t *device) device 932 daemons/fenced/fenced_commands.c if (device->agent_metadata == NULL) { device 936 daemons/fenced/fenced_commands.c xpath = xpath_search(device->agent_metadata, "//action"); device 954 daemons/fenced/fenced_commands.c stonith__set_device_flags(device->flags, device->id, device 957 daemons/fenced/fenced_commands.c stonith__set_device_flags(device->flags, device->id, device 960 daemons/fenced/fenced_commands.c stonith__set_device_flags(device->flags, device->id, device 971 daemons/fenced/fenced_commands.c device->automatic_unfencing = TRUE; device 973 daemons/fenced/fenced_commands.c stonith__set_device_flags(device->flags, device->id, device 980 daemons/fenced/fenced_commands.c pcmk__add_word(&(device->on_target_actions), 64, action); device 1016 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 1019 daemons/fenced/fenced_commands.c CRM_CHECK(agent != NULL, return device); device 1021 daemons/fenced/fenced_commands.c device = pcmk__assert_alloc(1, sizeof(stonith_device_t)); device 1023 daemons/fenced/fenced_commands.c device->id = crm_element_value_copy(dev, PCMK_XA_ID); device 1024 daemons/fenced/fenced_commands.c device->agent = agent; device 1025 daemons/fenced/fenced_commands.c device->namespace = crm_element_value_copy(dev, PCMK__XA_NAMESPACE); device 1026 daemons/fenced/fenced_commands.c device->params = xml2list(dev); device 1028 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, PCMK_STONITH_HOST_LIST); device 1030 daemons/fenced/fenced_commands.c device->targets = stonith__parse_targets(value); device 1033 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, PCMK_STONITH_HOST_MAP); device 1034 daemons/fenced/fenced_commands.c device->aliases = build_port_aliases(value, &(device->targets)); device 1036 daemons/fenced/fenced_commands.c value = target_list_type(device); device 1038 daemons/fenced/fenced_commands.c && (device->targets != NULL)) { device 1041 daemons/fenced/fenced_commands.c g_list_free_full(device->targets, free); device 1042 daemons/fenced/fenced_commands.c device->targets = NULL; device 1044 daemons/fenced/fenced_commands.c switch (get_agent_metadata(device->agent, &device->agent_metadata)) { device 1046 daemons/fenced/fenced_commands.c if (device->agent_metadata) { device 1047 daemons/fenced/fenced_commands.c read_action_metadata(device); device 1048 daemons/fenced/fenced_commands.c stonith__device_parameter_flags(&(device->flags), device->id, device 1049 daemons/fenced/fenced_commands.c device->agent_metadata); device 1054 daemons/fenced/fenced_commands.c if (device->timer == NULL) { device 1055 daemons/fenced/fenced_commands.c device->timer = mainloop_timer_add("get_agent_metadata", 10 * 1000, device 1056 daemons/fenced/fenced_commands.c TRUE, get_agent_metadata_cb, device); device 1058 daemons/fenced/fenced_commands.c if (!mainloop_timer_running(device->timer)) { device 1059 daemons/fenced/fenced_commands.c mainloop_timer_start(device->timer); device 1067 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, "nodeid"); device 1069 daemons/fenced/fenced_commands.c device->include_nodeid = is_nodeid_required(device->agent_metadata); device 1074 daemons/fenced/fenced_commands.c device->automatic_unfencing = TRUE; device 1077 daemons/fenced/fenced_commands.c if (is_action_required(PCMK_ACTION_ON, device)) { device 1078 daemons/fenced/fenced_commands.c crm_info("Fencing device '%s' requires unfencing", device->id); device 1081 daemons/fenced/fenced_commands.c if (device->on_target_actions != NULL) { device 1083 daemons/fenced/fenced_commands.c "on target", device->id, device 1084 daemons/fenced/fenced_commands.c (const char *) device->on_target_actions->str); device 1087 daemons/fenced/fenced_commands.c device->work = mainloop_add_trigger(G_PRIORITY_HIGH, stonith_device_dispatch, device); device 1090 daemons/fenced/fenced_commands.c return device; device 1095 daemons/fenced/fenced_commands.c stonith_device_t * device, device 1113 daemons/fenced/fenced_commands.c cmd->device = pcmk__str_copy(device->id); device 1121 daemons/fenced/fenced_commands.c schedule_stonith_command(cmd, device); device 1297 daemons/fenced/fenced_commands.c device_has_duplicate(const stonith_device_t *device) device 1299 daemons/fenced/fenced_commands.c stonith_device_t *dup = g_hash_table_lookup(device_list, device->id); device 1302 daemons/fenced/fenced_commands.c crm_trace("No match for %s", device->id); device 1305 daemons/fenced/fenced_commands.c } else if (!pcmk__str_eq(dup->agent, device->agent, pcmk__str_casei)) { device 1306 daemons/fenced/fenced_commands.c crm_trace("Different agent: %s != %s", dup->agent, device->agent); device 1311 daemons/fenced/fenced_commands.c if (device_params_diff(device->params, dup->params) || device 1312 daemons/fenced/fenced_commands.c device_params_diff(dup->params, device->params)) { device 1324 daemons/fenced/fenced_commands.c stonith_device_t *device = build_device_from_xml(dev); device 1328 daemons/fenced/fenced_commands.c CRM_CHECK(device != NULL, return -ENOMEM); device 1331 daemons/fenced/fenced_commands.c if (pcmk__str_eq(device->id, STONITH_WATCHDOG_ID, pcmk__str_none) || device 1332 daemons/fenced/fenced_commands.c pcmk__str_any_of(device->agent, STONITH_WATCHDOG_AGENT, device 1339 daemons/fenced/fenced_commands.c } else if (!pcmk__str_any_of(device->agent, STONITH_WATCHDOG_AGENT, device 1343 daemons/fenced/fenced_commands.c device->agent?device->agent:""); device 1346 daemons/fenced/fenced_commands.c } else if (!pcmk__str_eq(device->id, STONITH_WATCHDOG_ID, device 1350 daemons/fenced/fenced_commands.c device->id?device->id:""); device 1356 daemons/fenced/fenced_commands.c if (pcmk__str_eq(device->agent, STONITH_WATCHDOG_AGENT, device 1362 daemons/fenced/fenced_commands.c stonith_watchdog_targets = device->targets; device 1363 daemons/fenced/fenced_commands.c device->targets = NULL; device 1366 daemons/fenced/fenced_commands.c g_list_free_full(device->targets, free); device 1367 daemons/fenced/fenced_commands.c device->targets = stonith__parse_targets(local_node_name); device 1368 daemons/fenced/fenced_commands.c pcmk__insert_dup(device->params, device 1376 daemons/fenced/fenced_commands.c device->targets = NULL; device 1377 daemons/fenced/fenced_commands.c stonith_device_remove(device->id, from_cib); device 1379 daemons/fenced/fenced_commands.c free_device(device); device 1383 daemons/fenced/fenced_commands.c dup = device_has_duplicate(device); device 1387 daemons/fenced/fenced_commands.c device->id, ndevices, pcmk__plural_s(ndevices)); device 1388 daemons/fenced/fenced_commands.c free_device(device); device 1389 daemons/fenced/fenced_commands.c device = dup; device 1390 daemons/fenced/fenced_commands.c dup = g_hash_table_lookup(device_list, device->id); device 1394 daemons/fenced/fenced_commands.c stonith_device_t *old = g_hash_table_lookup(device_list, device->id); device 1401 daemons/fenced/fenced_commands.c crm_info("Overwriting existing entry for %s from CIB", device->id); device 1402 daemons/fenced/fenced_commands.c device->pending_ops = old->pending_ops; device 1403 daemons/fenced/fenced_commands.c device->api_registered = TRUE; device 1405 daemons/fenced/fenced_commands.c if (device->pending_ops) { device 1406 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 1409 daemons/fenced/fenced_commands.c g_hash_table_replace(device_list, device->id, device); device 1413 daemons/fenced/fenced_commands.c device->id, ndevices, pcmk__plural_s(ndevices)); device 1417 daemons/fenced/fenced_commands.c device->cib_registered = TRUE; device 1419 daemons/fenced/fenced_commands.c device->api_registered = TRUE; device 1428 daemons/fenced/fenced_commands.c stonith_device_t *device = g_hash_table_lookup(device_list, id); device 1431 daemons/fenced/fenced_commands.c if (!device) { device 1439 daemons/fenced/fenced_commands.c device->cib_registered = FALSE; device 1441 daemons/fenced/fenced_commands.c device->verified = FALSE; device 1442 daemons/fenced/fenced_commands.c device->api_registered = FALSE; device 1445 daemons/fenced/fenced_commands.c if (!device->cib_registered && !device->api_registered) { device 1454 daemons/fenced/fenced_commands.c (device->cib_registered? " cib" : ""), device 1455 daemons/fenced/fenced_commands.c (device->api_registered? " api" : "")); device 1746 daemons/fenced/fenced_commands.c const char *device = dIter->value; device 1748 daemons/fenced/fenced_commands.c crm_trace("Adding device '%s' for %s[%d]", device, tp->target, id); device 1749 daemons/fenced/fenced_commands.c tp->levels[id] = g_list_append(tp->levels[id], pcmk__str_copy(device)); device 1898 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 1929 daemons/fenced/fenced_commands.c device = g_hash_table_lookup(device_list, id); device 1930 daemons/fenced/fenced_commands.c if (device == NULL) { device 1937 daemons/fenced/fenced_commands.c } else if (!device->api_registered device 1954 daemons/fenced/fenced_commands.c schedule_stonith_command(cmd, device); device 1959 daemons/fenced/fenced_commands.c search_devices_record_result(struct device_search_s *search, const char *device, gboolean can_fence) device 1962 daemons/fenced/fenced_commands.c if (can_fence && device) { device 1964 daemons/fenced/fenced_commands.c stonith_device_t *dev = g_hash_table_lookup(device_list, device); device 1970 daemons/fenced/fenced_commands.c pcmk__str_copy(device)); device 2001 daemons/fenced/fenced_commands.c localhost_is_eligible(const stonith_device_t *device, const char *action, device 2007 daemons/fenced/fenced_commands.c if ((device != NULL) && (action != NULL) device 2008 daemons/fenced/fenced_commands.c && (device->on_target_actions != NULL) device 2009 daemons/fenced/fenced_commands.c && (strstr((const char*) device->on_target_actions->str, device 2014 daemons/fenced/fenced_commands.c "host, not %s", action, device->id, target); device 2038 daemons/fenced/fenced_commands.c localhost_is_eligible_with_remap(const stonith_device_t *device, device 2043 daemons/fenced/fenced_commands.c if (localhost_is_eligible(device, action, target, allow_self)) { device 2055 daemons/fenced/fenced_commands.c if (localhost_is_eligible(device, PCMK_ACTION_OFF, target, allow_self) device 2056 daemons/fenced/fenced_commands.c || localhost_is_eligible(device, PCMK_ACTION_ON, target, FALSE)) { device 2244 daemons/fenced/fenced_commands.c const stonith_device_t *device, device 2251 daemons/fenced/fenced_commands.c CRM_CHECK(xml && action && device, return); device 2254 daemons/fenced/fenced_commands.c if (is_action_required(action, device)) { device 2255 daemons/fenced/fenced_commands.c crm_trace("Action '%s' is required using %s", action, device->id); device 2260 daemons/fenced/fenced_commands.c action_specific_timeout = get_action_timeout(device, action, 0); device 2263 daemons/fenced/fenced_commands.c action, action_specific_timeout, device->id); device 2268 daemons/fenced/fenced_commands.c delay_max = get_action_delay_max(device, action); device 2271 daemons/fenced/fenced_commands.c action, delay_max, device->id); device 2275 daemons/fenced/fenced_commands.c delay_base = get_action_delay_base(device, action, target); device 2282 daemons/fenced/fenced_commands.c action, delay_max, device->id); device 2285 daemons/fenced/fenced_commands.c action, delay_base, device->id); device 2289 daemons/fenced/fenced_commands.c action, delay_base, delay_max, device->id); device 2304 daemons/fenced/fenced_commands.c add_disallowed(xmlNode *xml, const char *action, const stonith_device_t *device, device 2307 daemons/fenced/fenced_commands.c if (!localhost_is_eligible(device, action, target, allow_self)) { device 2309 daemons/fenced/fenced_commands.c action, device->id); device 2326 daemons/fenced/fenced_commands.c const stonith_device_t *device, const char *target, device 2332 daemons/fenced/fenced_commands.c add_action_specific_attributes(child, action, device, target); device 2333 daemons/fenced/fenced_commands.c add_disallowed(child, action, device, target, allow_self); device 2388 daemons/fenced/fenced_commands.c stonith_device_t *device = g_hash_table_lookup(device_list, lpc->data); device 2392 daemons/fenced/fenced_commands.c if (!device) { device 2401 daemons/fenced/fenced_commands.c crm_xml_add(dev, PCMK_XA_ID, device->id); device 2402 daemons/fenced/fenced_commands.c crm_xml_add(dev, PCMK__XA_NAMESPACE, device->namespace); device 2403 daemons/fenced/fenced_commands.c crm_xml_add(dev, PCMK_XA_AGENT, device->agent); device 2406 daemons/fenced/fenced_commands.c crm_xml_add_int(dev, PCMK__XA_ST_MONITOR_VERIFIED, device->verified); device 2408 daemons/fenced/fenced_commands.c crm_xml_add_int(dev, PCMK__XA_ST_DEVICE_SUPPORT_FLAGS, device->flags); device 2413 daemons/fenced/fenced_commands.c if (!pcmk_is_set(device->flags, st_device_supports_reboot) device 2417 daemons/fenced/fenced_commands.c device->id); device 2422 daemons/fenced/fenced_commands.c add_action_specific_attributes(dev, action, device, query->target); device 2435 daemons/fenced/fenced_commands.c add_disallowed(dev, action, device, query->target, device 2438 daemons/fenced/fenced_commands.c add_action_reply(dev, PCMK_ACTION_OFF, device, query->target, device 2441 daemons/fenced/fenced_commands.c add_action_reply(dev, PCMK_ACTION_ON, device, query->target, FALSE); device 2448 daemons/fenced/fenced_commands.c g_hash_table_foreach(device->params, hash2field, attrs); device 2524 daemons/fenced/fenced_commands.c if (cmd->device != NULL) { device 2525 daemons/fenced/fenced_commands.c pcmk__g_strcat(msg, "using ", cmd->device, " ", NULL); device 2558 daemons/fenced/fenced_commands.c char *prefix = crm_strdup_printf("%s[%d]", cmd->device, pid); device 2620 daemons/fenced/fenced_commands.c stonith_device_t *device = cmd_device(cmd); device 2622 daemons/fenced/fenced_commands.c if (device) { device 2624 daemons/fenced/fenced_commands.c cmd->action, device->id); device 2625 daemons/fenced/fenced_commands.c device->pending_ops = g_list_remove(device->pending_ops, cmd); device 2672 daemons/fenced/fenced_commands.c !pcmk__str_eq(cmd->device, cmd_other->device, pcmk__str_casei)) { device 2725 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 2730 daemons/fenced/fenced_commands.c device = cmd_device(cmd); device 2734 daemons/fenced/fenced_commands.c if (device) { device 2735 daemons/fenced/fenced_commands.c if (!device->verified && pcmk__result_ok(result) device 2740 daemons/fenced/fenced_commands.c device->verified = TRUE; device 2743 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 2750 daemons/fenced/fenced_commands.c && !is_action_required(cmd->action, device)) { device 2789 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 2798 daemons/fenced/fenced_commands.c device = g_hash_table_lookup(device_list, devices->data); device 2801 daemons/fenced/fenced_commands.c if (device == NULL) { // No device found device 2815 daemons/fenced/fenced_commands.c schedule_stonith_command(cmd, device); device 2830 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 2847 daemons/fenced/fenced_commands.c device = g_hash_table_lookup(device_list, device_id); device 2848 daemons/fenced/fenced_commands.c if (device == NULL) { device 2854 daemons/fenced/fenced_commands.c schedule_stonith_command(cmd, device); device 2962 daemons/fenced/fenced_commands.c crm_xml_add(reply, PCMK__XA_ST_DEVICE_ID, cmd->device); device 3170 daemons/fenced/fenced_commands.c const char *device = crm_element_value(dev, PCMK__XA_ST_DEVICE_ID); device 3172 daemons/fenced/fenced_commands.c if (pcmk__str_eq(device, "manual_ack", pcmk__str_casei)) { device 3279 daemons/fenced/fenced_commands.c const char *device = crm_element_value(dev, PCMK__XA_ST_DEVICE_ID); device 3286 daemons/fenced/fenced_commands.c target, (device? device : "any device")); device 3299 daemons/fenced/fenced_commands.c (device == NULL)? "(any)" : device); device 184 daemons/fenced/fenced_remote.c const char *device, uint32_t support_action_only) device 186 daemons/fenced/fenced_remote.c device_properties_t *props = g_hash_table_lookup(peer->devices, device); device 208 daemons/fenced/fenced_remote.c const char *device, gboolean verified_devices_only) device 210 daemons/fenced/fenced_remote.c device_properties_t *props = find_peer_device(op, peer, device, device 218 daemons/fenced/fenced_remote.c device, peer->host, count_peer_devices(op, peer, FALSE, st_device_supports_none)); device 801 daemons/fenced/fenced_remote.c add_required_device(remote_fencing_op_t *op, const char *device) device 803 daemons/fenced/fenced_remote.c GList *match = g_list_find_custom(op->automatic_list, device, device 808 daemons/fenced/fenced_remote.c pcmk__str_copy(device)); device 820 daemons/fenced/fenced_remote.c remove_required_device(remote_fencing_op_t *op, const char *device) device 822 daemons/fenced/fenced_remote.c GList *match = g_list_find_custom(op->automatic_list, device, device 841 daemons/fenced/fenced_remote.c const char *device = lpc->data; device 844 daemons/fenced/fenced_remote.c pcmk__str_copy(device)); device 1379 daemons/fenced/fenced_remote.c is_watchdog_fencing(const remote_fencing_op_t *op, const char *device) device 1383 daemons/fenced/fenced_remote.c && pcmk__str_eq(device, STONITH_WATCHDOG_ID, pcmk__str_null_matches) device 1389 daemons/fenced/fenced_remote.c find_best_peer(const char *device, remote_fencing_op_t * op, enum find_best_peer_options options) device 1394 daemons/fenced/fenced_remote.c if (!device && pcmk_is_set(op->call_options, st_opt_topology)) { device 1413 daemons/fenced/fenced_remote.c if (grab_peer_device(op, peer, device, verified_devices_only)) { device 1432 daemons/fenced/fenced_remote.c const char *device = NULL; device 1438 daemons/fenced/fenced_remote.c device = op->devices->data; device 1440 daemons/fenced/fenced_remote.c op->action, op->target, device); device 1447 daemons/fenced/fenced_remote.c peer = find_best_peer(device, op, FIND_PEER_SKIP_TARGET|FIND_PEER_VERIFIED_ONLY); device 1449 daemons/fenced/fenced_remote.c crm_trace("Found verified peer %s for %s", peer->host, device?device:"<any>"); device 1459 daemons/fenced/fenced_remote.c peer = find_best_peer(device, op, FIND_PEER_SKIP_TARGET); device 1469 daemons/fenced/fenced_remote.c peer = find_best_peer(device, op, FIND_PEER_TARGET_ONLY); device 1486 daemons/fenced/fenced_remote.c if (is_watchdog_fencing(op, device)) { device 1492 daemons/fenced/fenced_remote.c op->action, op->target, (device? device : "any device")); device 1499 daemons/fenced/fenced_remote.c const remote_fencing_op_t *op, const char *device) device 1503 daemons/fenced/fenced_remote.c if (!is_watchdog_fencing(op, device)) { device 1516 daemons/fenced/fenced_remote.c op->action, specified_timeout, device? device : "watchdog", device 1532 daemons/fenced/fenced_remote.c const peer_device_info_t *peer, const char *device, device 1538 daemons/fenced/fenced_remote.c timeout = valid_fencing_timeout(op->base_timeout, false, op, device); device 1540 daemons/fenced/fenced_remote.c if (!peer || !device) { device 1544 daemons/fenced/fenced_remote.c props = g_hash_table_lookup(peer->devices, device); device 1551 daemons/fenced/fenced_remote.c true, op, device); device 1771 daemons/fenced/fenced_remote.c advance_topology_device_in_level(remote_fencing_op_t *op, const char *device, device 1783 daemons/fenced/fenced_remote.c remove_required_device(op, device); device 1859 daemons/fenced/fenced_remote.c const char *device = NULL; device 1880 daemons/fenced/fenced_remote.c device = op->devices->data; device 1881 daemons/fenced/fenced_remote.c if (pcmk__str_eq(fenced_device_reboot_action(device), PCMK_ACTION_OFF, device 1885 daemons/fenced/fenced_remote.c op->target, device); device 1886 daemons/fenced/fenced_remote.c advance_topology_device_in_level(op, device, NULL); device 1889 daemons/fenced/fenced_remote.c if (!fenced_device_supports_on(device)) { device 1891 daemons/fenced/fenced_remote.c "doesn't support 'on'", op->target, device); device 1892 daemons/fenced/fenced_remote.c advance_topology_device_in_level(op, device, NULL); device 1922 daemons/fenced/fenced_remote.c device = op->devices->data; device 1927 daemons/fenced/fenced_remote.c timeout = get_device_timeout(op, peer, device, false); device 1954 daemons/fenced/fenced_remote.c if (device) { device 1956 daemons/fenced/fenced_remote.c get_device_timeout(op, peer, device, true); device 1959 daemons/fenced/fenced_remote.c peer->host, op->action, op->target, device, device 1961 daemons/fenced/fenced_remote.c crm_xml_add(remote_op, PCMK__XA_ST_DEVICE_ID, device); device 1978 daemons/fenced/fenced_remote.c if (!is_watchdog_fencing(op, device) device 2014 daemons/fenced/fenced_remote.c "after successful 'off'", device, op->target); device 2015 daemons/fenced/fenced_remote.c advance_topology_device_in_level(op, device, NULL); device 2036 daemons/fenced/fenced_remote.c if (is_watchdog_fencing(op, device) device 2081 daemons/fenced/fenced_remote.c op->action, op->target, (device? " using " : ""), device 2082 daemons/fenced/fenced_remote.c (device? device : ""), op->client_name, op->id); device 2115 daemons/fenced/fenced_remote.c GList *device = NULL; device 2133 daemons/fenced/fenced_remote.c for (device = tp->levels[i]; device; device = device->next) { device 2141 daemons/fenced/fenced_remote.c match = find_peer_device(op, peer, device->data, st_device_supports_none); device 2165 daemons/fenced/fenced_remote.c parse_action_specific(const xmlNode *xml, const char *peer, const char *device, device 2174 daemons/fenced/fenced_remote.c peer, device, action, props->custom_action_timeout[phase]); device 2181 daemons/fenced/fenced_remote.c peer, device, props->delay_max[phase], action); device 2189 daemons/fenced/fenced_remote.c peer, device, props->delay_base[phase], action); device 2199 daemons/fenced/fenced_remote.c peer, device, action); device 2200 daemons/fenced/fenced_remote.c add_required_device(op, device); device 2210 daemons/fenced/fenced_remote.c peer, action, device); device 2225 daemons/fenced/fenced_remote.c peer_device_info_t *peer, const char *device) device 2234 daemons/fenced/fenced_remote.c g_hash_table_insert(peer->devices, pcmk__str_copy(device), props); device 2240 daemons/fenced/fenced_remote.c peer->host, device); device 2250 daemons/fenced/fenced_remote.c "(assuming unfencing): %s", device, pcmk_rc_str(rc)); device 2254 daemons/fenced/fenced_remote.c parse_action_specific(xml, peer->host, device, op_requested_action(op), device 2263 daemons/fenced/fenced_remote.c parse_action_specific(child, peer->host, device, PCMK_ACTION_OFF, device 2268 daemons/fenced/fenced_remote.c parse_action_specific(child, peer->host, device, PCMK_ACTION_ON, device 2299 daemons/fenced/fenced_remote.c const char *device = pcmk__xe_id(child); device 2301 daemons/fenced/fenced_remote.c if (device) { device 2302 daemons/fenced/fenced_remote.c add_device_properties(child, op, peer, device); device 2436 daemons/fenced/fenced_remote.c const char *device = NULL; device 2451 daemons/fenced/fenced_remote.c device = crm_element_value(dev, PCMK__XA_ST_DEVICE_ID); device 2475 daemons/fenced/fenced_remote.c if (op->devices && device && !pcmk__str_eq(op->devices->data, device, pcmk__str_casei)) { device 2478 daemons/fenced/fenced_remote.c device, (const char *) op->devices->data, op->action, op->target); device 2499 daemons/fenced/fenced_remote.c op->id, device, op->target); device 2504 daemons/fenced/fenced_remote.c const char *device = NULL; device 2514 daemons/fenced/fenced_remote.c device = crm_element_value(msg, PCMK__XA_ST_DEVICE_ID); device 2522 daemons/fenced/fenced_remote.c device, pcmk_exec_status_str(op->result.execution_status), device 2531 daemons/fenced/fenced_remote.c ((device == NULL)? "" : " using "), device 2532 daemons/fenced/fenced_remote.c ((device == NULL)? "" : device), device 2544 daemons/fenced/fenced_remote.c advance_topology_device_in_level(op, device, msg); device 153 include/crm/stonith-ng.h char *device; device 1451 lib/fencing/st_client.c event->device = crm_element_value_copy(data, PCMK__XA_ST_DEVICE_ID); device 1464 lib/fencing/st_client.c event->device = crm_element_value_copy(data, PCMK__XA_ST_DEVICE_ID); device 1482 lib/fencing/st_client.c free(event->device); device 2680 lib/fencing/st_client.c const char *device = pcmk__s(event->device, "unknown"); device 2704 lib/fencing/st_client.c return crm_strdup_printf("A fencing device (%s) was added", device); device 2708 lib/fencing/st_client.c return crm_strdup_printf("A fencing device (%s) was removed", device); device 2713 lib/fencing/st_client.c device); device 2718 lib/fencing/st_client.c device); device 511 lib/fencing/st_output.c const char *device = va_arg(args, const char *); device 516 lib/fencing/st_output.c if (device) { device 517 lib/fencing/st_output.c char *buf = crm_strdup_printf("Validation of %s on %s %s", agent, device, device 537 lib/fencing/st_output.c const char *device = va_arg(args, const char *); device 542 lib/fencing/st_output.c if (device) { device 543 lib/fencing/st_output.c pcmk__indented_printf(out, "Validation of %s on %s %s\n", agent, device, device 559 lib/fencing/st_output.c const char *device = va_arg(args, const char *); device 570 lib/fencing/st_output.c if (device != NULL) { device 571 lib/fencing/st_output.c crm_xml_add(node, PCMK_XA_DEVICE, device); device 396 tools/stonith_admin.c const char *device = NULL; device 455 tools/stonith_admin.c device = options.register_dev; device 460 tools/stonith_admin.c device = options.query; device 465 tools/stonith_admin.c device = options.unregister_dev; device 470 tools/stonith_admin.c device = options.targets; device 588 tools/stonith_admin.c rc = st->cmds->monitor(st, st_opts, device, options.timeout); device 590 tools/stonith_admin.c rc = st->cmds->list(st, st_opts, device, NULL, options.timeout); device 596 tools/stonith_admin.c rc = pcmk__fence_list_targets(out, st, device, options.timeout*1000); device 615 tools/stonith_admin.c rc = st->cmds->register_device(st, st_opts, device, NULL, options.agent, device 622 tools/stonith_admin.c device, options.agent, pcmk_rc_str(rc)); device 628 tools/stonith_admin.c rc = st->cmds->remove_device(st, st_opts, device); device 632 tools/stonith_admin.c device, pcmk_rc_str(rc)); device 688 tools/stonith_admin.c device = NULL; device 690 tools/stonith_admin.c device = g_list_nth_data(options.devices, 0); device 693 tools/stonith_admin.c rc = pcmk__fence_validate(out, st, options.agent, device, options.params,