device 69 daemons/fenced/fenced_commands.c static void search_devices_record_result(struct device_search_s *search, const char *device, device 73 daemons/fenced/fenced_commands.c static void read_action_metadata(stonith_device_t *device); device 96 daemons/fenced/fenced_commands.c char *device; device 117 daemons/fenced/fenced_commands.c is_action_required(const char *action, stonith_device_t *device) device 119 daemons/fenced/fenced_commands.c return device && device->automatic_unfencing && pcmk__str_eq(action, "on", device 124 daemons/fenced/fenced_commands.c get_action_delay_max(stonith_device_t * device, const char * action) device 133 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, PCMK_STONITH_DELAY_MAX); device 142 daemons/fenced/fenced_commands.c get_action_delay_base(stonith_device_t *device, const char *action, const char *victim) device 151 daemons/fenced/fenced_commands.c hash_value = g_hash_table_lookup(device->params, PCMK_STONITH_DELAY_BASE); device 207 daemons/fenced/fenced_commands.c get_action_timeout(stonith_device_t * device, const char *action, int default_timeout) device 209 daemons/fenced/fenced_commands.c if (action && device && device->params) { device 217 daemons/fenced/fenced_commands.c && !pcmk_is_set(device->flags, st_device_supports_reboot)) { device 219 daemons/fenced/fenced_commands.c device->id); device 225 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, buffer); device 247 daemons/fenced/fenced_commands.c free(cmd->device); device 283 daemons/fenced/fenced_commands.c cmd->device = crm_element_value_copy(op, F_STONITH_DEVICE); device 294 daemons/fenced/fenced_commands.c get_action_limit(stonith_device_t * device) device 299 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, PCMK_STONITH_ACTION_LIMIT); device 309 daemons/fenced/fenced_commands.c get_active_cmds(stonith_device_t * device) device 315 daemons/fenced/fenced_commands.c CRM_CHECK(device != NULL, return 0); device 322 daemons/fenced/fenced_commands.c if (cmd->active_on == device) { device 334 daemons/fenced/fenced_commands.c stonith_device_t * device = device 340 daemons/fenced/fenced_commands.c CRM_ASSERT(device); device 345 daemons/fenced/fenced_commands.c device->id, cmd->timeout); device 346 daemons/fenced/fenced_commands.c cmd->active_on = device; device 352 daemons/fenced/fenced_commands.c stonith_device_t *device = data; device 355 daemons/fenced/fenced_commands.c switch (get_agent_metadata(device->agent, &device->agent_metadata)) { device 357 daemons/fenced/fenced_commands.c if (device->agent_metadata) { device 358 daemons/fenced/fenced_commands.c read_action_metadata(device); device 359 daemons/fenced/fenced_commands.c stonith__device_parameter_flags(&(device->flags), device->id, device 360 daemons/fenced/fenced_commands.c device->agent_metadata); device 365 daemons/fenced/fenced_commands.c period_ms = pcmk__mainloop_timer_get_period(device->timer); device 367 daemons/fenced/fenced_commands.c mainloop_timer_set_period(device->timer, 2 * period_ms); device 390 daemons/fenced/fenced_commands.c stonith_device_execute(stonith_device_t * device) device 402 daemons/fenced/fenced_commands.c CRM_CHECK(device != NULL, return FALSE); device 404 daemons/fenced/fenced_commands.c active_cmds = get_active_cmds(device); device 405 daemons/fenced/fenced_commands.c action_limit = get_action_limit(device); device 408 daemons/fenced/fenced_commands.c device->id, action_limit, active_cmds, device 413 daemons/fenced/fenced_commands.c for (gIter = device->pending_ops; gIter != NULL; gIter = gIterNext) { device 424 daemons/fenced/fenced_commands.c device->id, pending_op->start_delay); device 428 daemons/fenced/fenced_commands.c device->pending_ops = g_list_remove_link(device->pending_ops, gIter); device 436 daemons/fenced/fenced_commands.c crm_trace("No actions using %s are needed", device->id); device 440 daemons/fenced/fenced_commands.c if (pcmk__str_any_of(device->agent, STONITH_WATCHDOG_AGENT, device 455 daemons/fenced/fenced_commands.c exec_rc = pcmk__substitute_secrets(device->id, device->params); device 460 daemons/fenced/fenced_commands.c device->id, pcmk_rc_str(exec_rc)); device 464 daemons/fenced/fenced_commands.c device->id, pcmk_rc_str(exec_rc)); device 473 daemons/fenced/fenced_commands.c && !pcmk_is_set(device->flags, st_device_supports_reboot)) { device 479 daemons/fenced/fenced_commands.c device->id, device->agent); device 483 daemons/fenced/fenced_commands.c if (pcmk_is_set(device->flags, st_device_supports_parameter_port)) { device 486 daemons/fenced/fenced_commands.c } else if (pcmk_is_set(device->flags, st_device_supports_parameter_plug)) { device 490 daemons/fenced/fenced_commands.c action = stonith_action_create(device->agent, device 494 daemons/fenced/fenced_commands.c cmd->timeout, device->params, device 495 daemons/fenced/fenced_commands.c device->aliases, host_arg); device 499 daemons/fenced/fenced_commands.c cmd->activating_on = device; device 512 daemons/fenced/fenced_commands.c if (device->pending_ops) { device 513 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 528 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 531 daemons/fenced/fenced_commands.c device = cmd->device ? g_hash_table_lookup(device_list, cmd->device) : NULL; device 533 daemons/fenced/fenced_commands.c if (device) { device 534 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 541 daemons/fenced/fenced_commands.c schedule_stonith_command(async_command_t * cmd, stonith_device_t * device) device 548 daemons/fenced/fenced_commands.c CRM_CHECK(device != NULL, return); device 550 daemons/fenced/fenced_commands.c if (cmd->device) { device 551 daemons/fenced/fenced_commands.c free(cmd->device); device 554 daemons/fenced/fenced_commands.c if (device->include_nodeid && cmd->victim) { device 560 daemons/fenced/fenced_commands.c cmd->device = strdup(device->id); device 561 daemons/fenced/fenced_commands.c cmd->timeout = get_action_timeout(device, cmd->action, cmd->default_timeout); device 568 daemons/fenced/fenced_commands.c device->id, cmd->origin, cmd->remote_op_id, cmd->timeout); device 573 daemons/fenced/fenced_commands.c device->id, cmd->client, cmd->timeout); device 576 daemons/fenced/fenced_commands.c device->pending_ops = g_list_append(device->pending_ops, cmd); device 577 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 584 daemons/fenced/fenced_commands.c delay_max = get_action_delay_max(device, cmd->action); device 585 daemons/fenced/fenced_commands.c delay_base = get_action_delay_base(device, cmd->action, cmd->victim); device 593 daemons/fenced/fenced_commands.c delay_base, delay_max, cmd->action, device->id); device 608 daemons/fenced/fenced_commands.c device->id, cmd->start_delay, cmd->timeout, device 619 daemons/fenced/fenced_commands.c stonith_device_t *device = data; device 621 daemons/fenced/fenced_commands.c g_hash_table_destroy(device->params); device 622 daemons/fenced/fenced_commands.c g_hash_table_destroy(device->aliases); device 624 daemons/fenced/fenced_commands.c for (gIter = device->pending_ops; gIter != NULL; gIter = gIter->next) { device 627 daemons/fenced/fenced_commands.c crm_warn("Removal of device '%s' purged operation '%s'", device->id, cmd->action); device 630 daemons/fenced/fenced_commands.c g_list_free(device->pending_ops); device 632 daemons/fenced/fenced_commands.c g_list_free_full(device->targets, free); device 634 daemons/fenced/fenced_commands.c if (device->timer) { device 635 daemons/fenced/fenced_commands.c mainloop_timer_stop(device->timer); device 636 daemons/fenced/fenced_commands.c mainloop_timer_del(device->timer); device 639 daemons/fenced/fenced_commands.c mainloop_destroy_trigger(device->work); device 641 daemons/fenced/fenced_commands.c free_xml(device->agent_metadata); device 642 daemons/fenced/fenced_commands.c free(device->namespace); device 643 daemons/fenced/fenced_commands.c free(device->on_target_actions); device 644 daemons/fenced/fenced_commands.c free(device->agent); device 645 daemons/fenced/fenced_commands.c free(device->id); device 646 daemons/fenced/fenced_commands.c free(device); device 844 daemons/fenced/fenced_commands.c read_action_metadata(stonith_device_t *device) device 850 daemons/fenced/fenced_commands.c if (device->agent_metadata == NULL) { device 854 daemons/fenced/fenced_commands.c xpath = xpath_search(device->agent_metadata, "//action"); device 874 daemons/fenced/fenced_commands.c stonith__set_device_flags(device->flags, device->id, device 877 daemons/fenced/fenced_commands.c stonith__set_device_flags(device->flags, device->id, device 880 daemons/fenced/fenced_commands.c stonith__set_device_flags(device->flags, device->id, device 890 daemons/fenced/fenced_commands.c device->automatic_unfencing = TRUE; device 895 daemons/fenced/fenced_commands.c device->on_target_actions = add_action(device->on_target_actions, action); device 999 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 1002 daemons/fenced/fenced_commands.c CRM_CHECK(agent != NULL, return device); device 1004 daemons/fenced/fenced_commands.c device = calloc(1, sizeof(stonith_device_t)); device 1006 daemons/fenced/fenced_commands.c CRM_CHECK(device != NULL, {free(agent); return device;}); device 1008 daemons/fenced/fenced_commands.c device->id = crm_element_value_copy(dev, XML_ATTR_ID); device 1009 daemons/fenced/fenced_commands.c device->agent = agent; device 1010 daemons/fenced/fenced_commands.c device->namespace = crm_element_value_copy(dev, "namespace"); device 1011 daemons/fenced/fenced_commands.c device->params = xml2device_params(device->id, dev); device 1013 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, PCMK_STONITH_HOST_LIST); device 1015 daemons/fenced/fenced_commands.c device->targets = stonith__parse_targets(value); device 1018 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, PCMK_STONITH_HOST_MAP); device 1019 daemons/fenced/fenced_commands.c device->aliases = build_port_aliases(value, &(device->targets)); device 1021 daemons/fenced/fenced_commands.c value = target_list_type(device); device 1022 daemons/fenced/fenced_commands.c if (!pcmk__str_eq(value, "static-list", pcmk__str_casei) && device->targets) { device 1024 daemons/fenced/fenced_commands.c g_list_free_full(device->targets, free); device 1025 daemons/fenced/fenced_commands.c device->targets = NULL; device 1027 daemons/fenced/fenced_commands.c switch (get_agent_metadata(device->agent, &device->agent_metadata)) { device 1029 daemons/fenced/fenced_commands.c if (device->agent_metadata) { device 1030 daemons/fenced/fenced_commands.c read_action_metadata(device); device 1031 daemons/fenced/fenced_commands.c stonith__device_parameter_flags(&(device->flags), device->id, device 1032 daemons/fenced/fenced_commands.c device->agent_metadata); device 1037 daemons/fenced/fenced_commands.c if (device->timer == NULL) { device 1038 daemons/fenced/fenced_commands.c device->timer = mainloop_timer_add("get_agent_metadata", 10 * 1000, device 1039 daemons/fenced/fenced_commands.c TRUE, get_agent_metadata_cb, device); device 1041 daemons/fenced/fenced_commands.c if (!mainloop_timer_running(device->timer)) { device 1042 daemons/fenced/fenced_commands.c mainloop_timer_start(device->timer); device 1050 daemons/fenced/fenced_commands.c value = g_hash_table_lookup(device->params, "nodeid"); device 1052 daemons/fenced/fenced_commands.c device->include_nodeid = is_nodeid_required(device->agent_metadata); device 1057 daemons/fenced/fenced_commands.c device->automatic_unfencing = TRUE; device 1060 daemons/fenced/fenced_commands.c if (is_action_required("on", device)) { device 1061 daemons/fenced/fenced_commands.c crm_info("Fencing device '%s' requires unfencing", device->id); device 1064 daemons/fenced/fenced_commands.c if (device->on_target_actions) { device 1066 daemons/fenced/fenced_commands.c "on target", device->id, device->on_target_actions); device 1069 daemons/fenced/fenced_commands.c device->work = mainloop_add_trigger(G_PRIORITY_HIGH, stonith_device_dispatch, device); device 1072 daemons/fenced/fenced_commands.c return device; device 1077 daemons/fenced/fenced_commands.c stonith_device_t * device, device 1094 daemons/fenced/fenced_commands.c cmd->device = strdup(device->id); device 1102 daemons/fenced/fenced_commands.c schedule_stonith_command(cmd, device); device 1118 daemons/fenced/fenced_commands.c stonith_device_t *dev = cmd->device ? g_hash_table_lookup(device_list, cmd->device) : NULL; device 1155 daemons/fenced/fenced_commands.c stonith_device_t *dev = cmd->device ? g_hash_table_lookup(device_list, cmd->device) : NULL; device 1246 daemons/fenced/fenced_commands.c device_has_duplicate(stonith_device_t * device) device 1248 daemons/fenced/fenced_commands.c stonith_device_t *dup = g_hash_table_lookup(device_list, device->id); device 1251 daemons/fenced/fenced_commands.c crm_trace("No match for %s", device->id); device 1254 daemons/fenced/fenced_commands.c } else if (!pcmk__str_eq(dup->agent, device->agent, pcmk__str_casei)) { device 1255 daemons/fenced/fenced_commands.c crm_trace("Different agent: %s != %s", dup->agent, device->agent); device 1260 daemons/fenced/fenced_commands.c if (device_params_diff(device->params, dup->params) || device 1261 daemons/fenced/fenced_commands.c device_params_diff(dup->params, device->params)) { device 1273 daemons/fenced/fenced_commands.c stonith_device_t *device = build_device_from_xml(msg); device 1277 daemons/fenced/fenced_commands.c CRM_CHECK(device != NULL, return -ENOMEM); device 1280 daemons/fenced/fenced_commands.c if (pcmk__str_eq(device->id, STONITH_WATCHDOG_ID, pcmk__str_none) || device 1281 daemons/fenced/fenced_commands.c pcmk__str_any_of(device->agent, STONITH_WATCHDOG_AGENT, device 1288 daemons/fenced/fenced_commands.c } else if (!pcmk__str_any_of(device->agent, STONITH_WATCHDOG_AGENT, device 1292 daemons/fenced/fenced_commands.c device->agent?device->agent:""); device 1295 daemons/fenced/fenced_commands.c } else if (!pcmk__str_eq(device->id, STONITH_WATCHDOG_ID, device 1299 daemons/fenced/fenced_commands.c device->id?device->id:""); device 1303 daemons/fenced/fenced_commands.c if (pcmk__str_eq(device->agent, STONITH_WATCHDOG_AGENT, device 1309 daemons/fenced/fenced_commands.c stonith_watchdog_targets = device->targets; device 1310 daemons/fenced/fenced_commands.c device->targets = NULL; device 1313 daemons/fenced/fenced_commands.c g_list_free_full(device->targets, free); device 1314 daemons/fenced/fenced_commands.c device->targets = stonith__parse_targets(stonith_our_uname); device 1315 daemons/fenced/fenced_commands.c g_hash_table_replace(device->params, device 1324 daemons/fenced/fenced_commands.c device->targets = NULL; device 1325 daemons/fenced/fenced_commands.c stonith_device_remove(device->id, from_cib); device 1327 daemons/fenced/fenced_commands.c free_device(device); device 1331 daemons/fenced/fenced_commands.c dup = device_has_duplicate(device); device 1335 daemons/fenced/fenced_commands.c device->id, ndevices, pcmk__plural_s(ndevices)); device 1336 daemons/fenced/fenced_commands.c free_device(device); device 1337 daemons/fenced/fenced_commands.c device = dup; device 1338 daemons/fenced/fenced_commands.c dup = g_hash_table_lookup(device_list, device->id); device 1342 daemons/fenced/fenced_commands.c stonith_device_t *old = g_hash_table_lookup(device_list, device->id); device 1349 daemons/fenced/fenced_commands.c crm_info("Overwriting existing entry for %s from CIB", device->id); device 1350 daemons/fenced/fenced_commands.c device->pending_ops = old->pending_ops; device 1351 daemons/fenced/fenced_commands.c device->api_registered = TRUE; device 1353 daemons/fenced/fenced_commands.c if (device->pending_ops) { device 1354 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 1357 daemons/fenced/fenced_commands.c g_hash_table_replace(device_list, device->id, device); device 1361 daemons/fenced/fenced_commands.c device->id, ndevices, pcmk__plural_s(ndevices)); device 1364 daemons/fenced/fenced_commands.c *desc = device->id; device 1368 daemons/fenced/fenced_commands.c device->cib_registered = TRUE; device 1370 daemons/fenced/fenced_commands.c device->api_registered = TRUE; device 1379 daemons/fenced/fenced_commands.c stonith_device_t *device = g_hash_table_lookup(device_list, id); device 1382 daemons/fenced/fenced_commands.c if (!device) { device 1390 daemons/fenced/fenced_commands.c device->cib_registered = FALSE; device 1392 daemons/fenced/fenced_commands.c device->verified = FALSE; device 1393 daemons/fenced/fenced_commands.c device->api_registered = FALSE; device 1396 daemons/fenced/fenced_commands.c if (!device->cib_registered && !device->api_registered) { device 1405 daemons/fenced/fenced_commands.c (device->cib_registered? " cib" : ""), device 1406 daemons/fenced/fenced_commands.c (device->api_registered? " api" : "")); device 1624 daemons/fenced/fenced_commands.c const char *device = dIter->value; device 1626 daemons/fenced/fenced_commands.c crm_trace("Adding device '%s' for %s[%d]", device, tp->target, id); device 1627 daemons/fenced/fenced_commands.c tp->levels[id] = g_list_append(tp->levels[id], strdup(device)); device 1752 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 1774 daemons/fenced/fenced_commands.c device = g_hash_table_lookup(device_list, id); device 1775 daemons/fenced/fenced_commands.c if ((device == NULL) device 1776 daemons/fenced/fenced_commands.c || (!device->api_registered && !strcmp(action, "monitor"))) { device 1789 daemons/fenced/fenced_commands.c schedule_stonith_command(cmd, device); device 1794 daemons/fenced/fenced_commands.c search_devices_record_result(struct device_search_s *search, const char *device, gboolean can_fence) device 1798 daemons/fenced/fenced_commands.c if (can_fence && device) { device 1799 daemons/fenced/fenced_commands.c search->capable = g_list_append(search->capable, strdup(device)); device 1830 daemons/fenced/fenced_commands.c localhost_is_eligible(const stonith_device_t *device, const char *action, device 1836 daemons/fenced/fenced_commands.c if (device && action && device->on_target_actions device 1837 daemons/fenced/fenced_commands.c && strstr(device->on_target_actions, action)) { device 1840 daemons/fenced/fenced_commands.c "local host, not %s", action, device->id, target); device 2035 daemons/fenced/fenced_commands.c stonith_device_t *device, const char *target) device 2041 daemons/fenced/fenced_commands.c CRM_CHECK(xml && action && device, return); device 2043 daemons/fenced/fenced_commands.c if (is_action_required(action, device)) { device 2044 daemons/fenced/fenced_commands.c crm_trace("Action '%s' is required using %s", action, device->id); device 2048 daemons/fenced/fenced_commands.c action_specific_timeout = get_action_timeout(device, action, 0); device 2051 daemons/fenced/fenced_commands.c action, action_specific_timeout, device->id); device 2055 daemons/fenced/fenced_commands.c delay_max = get_action_delay_max(device, action); device 2058 daemons/fenced/fenced_commands.c action, delay_max, device->id); device 2062 daemons/fenced/fenced_commands.c delay_base = get_action_delay_base(device, action, target); device 2069 daemons/fenced/fenced_commands.c action, delay_max, device->id); device 2072 daemons/fenced/fenced_commands.c action, delay_base, device->id); device 2076 daemons/fenced/fenced_commands.c action, delay_base, delay_max, device->id); device 2091 daemons/fenced/fenced_commands.c add_disallowed(xmlNode *xml, const char *action, stonith_device_t *device, device 2094 daemons/fenced/fenced_commands.c if (!localhost_is_eligible(device, action, target, allow_suicide)) { device 2096 daemons/fenced/fenced_commands.c action, device->id); device 2112 daemons/fenced/fenced_commands.c add_action_reply(xmlNode *xml, const char *action, stonith_device_t *device, device 2118 daemons/fenced/fenced_commands.c add_action_specific_attributes(child, action, device, target); device 2119 daemons/fenced/fenced_commands.c add_disallowed(child, action, device, target, allow_suicide); device 2135 daemons/fenced/fenced_commands.c stonith_device_t *device = g_hash_table_lookup(device_list, lpc->data); device 2138 daemons/fenced/fenced_commands.c if (!device) { device 2147 daemons/fenced/fenced_commands.c crm_xml_add(dev, XML_ATTR_ID, device->id); device 2148 daemons/fenced/fenced_commands.c crm_xml_add(dev, "namespace", device->namespace); device 2149 daemons/fenced/fenced_commands.c crm_xml_add(dev, "agent", device->agent); device 2150 daemons/fenced/fenced_commands.c crm_xml_add_int(dev, F_STONITH_DEVICE_VERIFIED, device->verified); device 2155 daemons/fenced/fenced_commands.c if (!pcmk_is_set(device->flags, st_device_supports_reboot) device 2158 daemons/fenced/fenced_commands.c device->id); device 2163 daemons/fenced/fenced_commands.c add_action_specific_attributes(dev, action, device, query->target); device 2176 daemons/fenced/fenced_commands.c add_disallowed(dev, action, device, query->target, device 2178 daemons/fenced/fenced_commands.c add_action_reply(dev, "off", device, query->target, device 2180 daemons/fenced/fenced_commands.c add_action_reply(dev, "on", device, query->target, FALSE); device 2187 daemons/fenced/fenced_commands.c g_hash_table_foreach(device->params, hash2field, attrs); device 2228 daemons/fenced/fenced_commands.c const char *device = crm_element_value(dev, F_STONITH_DEVICE); device 2232 daemons/fenced/fenced_commands.c if (device && pcmk__str_eq(device, "manual_ack", pcmk__str_casei)) { device 2298 daemons/fenced/fenced_commands.c g_string_append_printf(msg, "using %s ", cmd->device); device 2322 daemons/fenced/fenced_commands.c char *prefix = crm_strdup_printf("%s[%d]", cmd->device, pid); device 2378 daemons/fenced/fenced_commands.c crm_xml_add(notify_data, F_STONITH_DEVICE, cmd->device); device 2392 daemons/fenced/fenced_commands.c stonith_device_t *device; device 2396 daemons/fenced/fenced_commands.c if (!cmd->device) { device 2400 daemons/fenced/fenced_commands.c device = g_hash_table_lookup(device_list, cmd->device); device 2402 daemons/fenced/fenced_commands.c if (device) { device 2404 daemons/fenced/fenced_commands.c cmd->action, device->id); device 2405 daemons/fenced/fenced_commands.c device->pending_ops = g_list_remove(device->pending_ops, cmd); device 2412 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 2424 daemons/fenced/fenced_commands.c device = g_hash_table_lookup(device_list, cmd->device); device 2425 daemons/fenced/fenced_commands.c if (device) { device 2426 daemons/fenced/fenced_commands.c if (!device->verified && (rc == pcmk_ok) && device 2429 daemons/fenced/fenced_commands.c device->verified = TRUE; device 2432 daemons/fenced/fenced_commands.c mainloop_set_trigger(device->work); device 2448 daemons/fenced/fenced_commands.c } else if (rc != 0 && cmd->device_next && (is_action_required(cmd->action, device) == FALSE)) { device 2492 daemons/fenced/fenced_commands.c !pcmk__str_eq(cmd->device, cmd_other->device, pcmk__str_casei)) { device 2541 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 2550 daemons/fenced/fenced_commands.c device = g_hash_table_lookup(device_list, devices->data); device 2552 daemons/fenced/fenced_commands.c if (device) { device 2560 daemons/fenced/fenced_commands.c if (device) { device 2561 daemons/fenced/fenced_commands.c schedule_stonith_command(cmd, device); device 2577 daemons/fenced/fenced_commands.c stonith_device_t *device = NULL; device 2587 daemons/fenced/fenced_commands.c device = g_hash_table_lookup(device_list, device_id); device 2588 daemons/fenced/fenced_commands.c if (device == NULL) { device 2592 daemons/fenced/fenced_commands.c schedule_stonith_command(cmd, device); device 2677 daemons/fenced/fenced_commands.c crm_xml_add(reply, F_STONITH_DEVICE, cmd->device); device 2947 daemons/fenced/fenced_commands.c const char *device = crm_element_value(dev, F_STONITH_DEVICE); device 2954 daemons/fenced/fenced_commands.c target, (device? device : "any device")); device 2965 daemons/fenced/fenced_commands.c remote_peer, action, target, device ? device : "(any)"); device 179 daemons/fenced/fenced_remote.c const char *device) device 181 daemons/fenced/fenced_remote.c device_properties_t *props = g_hash_table_lookup(peer->devices, device); device 200 daemons/fenced/fenced_remote.c const char *device, gboolean verified_devices_only) device 202 daemons/fenced/fenced_remote.c device_properties_t *props = find_peer_device(op, peer, device); device 209 daemons/fenced/fenced_remote.c device, peer->host, count_peer_devices(op, peer, FALSE)); device 703 daemons/fenced/fenced_remote.c add_required_device(remote_fencing_op_t *op, const char *device) device 705 daemons/fenced/fenced_remote.c GList *match = g_list_find_custom(op->automatic_list, device, device 709 daemons/fenced/fenced_remote.c op->automatic_list = g_list_prepend(op->automatic_list, strdup(device)); device 721 daemons/fenced/fenced_remote.c remove_required_device(remote_fencing_op_t *op, const char *device) device 723 daemons/fenced/fenced_remote.c GList *match = g_list_find_custom(op->automatic_list, device, device 1220 daemons/fenced/fenced_remote.c find_best_peer(const char *device, remote_fencing_op_t * op, enum find_best_peer_options options) device 1225 daemons/fenced/fenced_remote.c if (!device && pcmk_is_set(op->call_options, st_opt_topology)) { device 1244 daemons/fenced/fenced_remote.c if (grab_peer_device(op, peer, device, verified_devices_only)) { device 1263 daemons/fenced/fenced_remote.c const char *device = NULL; device 1269 daemons/fenced/fenced_remote.c device = op->devices->data; device 1271 daemons/fenced/fenced_remote.c op->action, op->target, device); device 1278 daemons/fenced/fenced_remote.c peer = find_best_peer(device, op, FIND_PEER_SKIP_TARGET|FIND_PEER_VERIFIED_ONLY); device 1280 daemons/fenced/fenced_remote.c crm_trace("Found verified peer %s for %s", peer->host, device?device:"<any>"); device 1290 daemons/fenced/fenced_remote.c peer = find_best_peer(device, op, FIND_PEER_SKIP_TARGET); device 1300 daemons/fenced/fenced_remote.c peer = find_best_peer(device, op, FIND_PEER_TARGET_ONLY); device 1315 daemons/fenced/fenced_remote.c op->action, op->target, (device? device : "any device")); device 1321 daemons/fenced/fenced_remote.c const char *device) device 1325 daemons/fenced/fenced_remote.c if (!peer || !device) { device 1329 daemons/fenced/fenced_remote.c props = g_hash_table_lookup(peer->devices, device); device 1489 daemons/fenced/fenced_remote.c advance_topology_device_in_level(remote_fencing_op_t *op, const char *device, device 1500 daemons/fenced/fenced_remote.c remove_required_device(op, device); device 1560 daemons/fenced/fenced_remote.c const char *device = NULL; device 1587 daemons/fenced/fenced_remote.c device = op->devices->data; device 1588 daemons/fenced/fenced_remote.c timeout = get_device_timeout(op, peer, device); device 1605 daemons/fenced/fenced_remote.c if (device) { device 1607 daemons/fenced/fenced_remote.c get_device_timeout(op, peer, device); device 1610 daemons/fenced/fenced_remote.c peer->host, op->action, op->target, device, device 1612 daemons/fenced/fenced_remote.c crm_xml_add(remote_op, F_STONITH_DEVICE, device); device 1628 daemons/fenced/fenced_remote.c (pcmk__str_eq(device, STONITH_WATCHDOG_ID, device 1664 daemons/fenced/fenced_remote.c "after successful 'off'", device, op->target); device 1665 daemons/fenced/fenced_remote.c advance_topology_device_in_level(op, device, NULL, pcmk_ok); device 1687 daemons/fenced/fenced_remote.c if(stonith_watchdog_timeout_ms > 0 && pcmk__str_eq(device, device 1718 daemons/fenced/fenced_remote.c op->action, op->target, (device? " using " : ""), device 1719 daemons/fenced/fenced_remote.c (device? device : ""), op->client_name, op->id); device 1750 daemons/fenced/fenced_remote.c GList *device = NULL; device 1768 daemons/fenced/fenced_remote.c for (device = tp->levels[i]; device; device = device->next) { device 1776 daemons/fenced/fenced_remote.c match = find_peer_device(op, peer, device->data); device 1799 daemons/fenced/fenced_remote.c parse_action_specific(xmlNode *xml, const char *peer, const char *device, device 1808 daemons/fenced/fenced_remote.c peer, device, action, props->custom_action_timeout[phase]); device 1815 daemons/fenced/fenced_remote.c peer, device, props->delay_max[phase], action); device 1822 daemons/fenced/fenced_remote.c peer, device, props->delay_base[phase], action); device 1832 daemons/fenced/fenced_remote.c peer, device, action); device 1833 daemons/fenced/fenced_remote.c add_required_device(op, device); device 1843 daemons/fenced/fenced_remote.c peer, action, device); device 1858 daemons/fenced/fenced_remote.c st_query_result_t *result, const char *device) device 1866 daemons/fenced/fenced_remote.c g_hash_table_insert(result->devices, strdup(device), props); device 1872 daemons/fenced/fenced_remote.c result->host, device); device 1877 daemons/fenced/fenced_remote.c parse_action_specific(xml, result->host, device, op_requested_action(op), device 1886 daemons/fenced/fenced_remote.c parse_action_specific(child, result->host, device, "off", device 1889 daemons/fenced/fenced_remote.c parse_action_specific(child, result->host, device, "on", device 1921 daemons/fenced/fenced_remote.c const char *device = ID(child); device 1923 daemons/fenced/fenced_remote.c if (device) { device 1924 daemons/fenced/fenced_remote.c add_device_properties(child, op, result, device); device 2058 daemons/fenced/fenced_remote.c const char *device = NULL; device 2072 daemons/fenced/fenced_remote.c device = crm_element_value(dev, F_STONITH_DEVICE); device 2092 daemons/fenced/fenced_remote.c if (op->devices && device && !pcmk__str_eq(op->devices->data, device, pcmk__str_casei)) { device 2095 daemons/fenced/fenced_remote.c device, (const char *) op->devices->data, op->action, op->target); device 2116 daemons/fenced/fenced_remote.c op->id, device, op->target); device 2121 daemons/fenced/fenced_remote.c const char *device = crm_element_value(msg, F_STONITH_DEVICE); device 2125 daemons/fenced/fenced_remote.c op->action, op->target, device, op->client_name, device 2140 daemons/fenced/fenced_remote.c "after successful 'off'", device, rc, op->target); device 2147 daemons/fenced/fenced_remote.c advance_topology_device_in_level(op, device, msg, rc); device 773 daemons/fenced/pacemaker-fenced.c stonith_device_t *device = NULL; device 790 daemons/fenced/pacemaker-fenced.c while (g_hash_table_iter_next(&iter, NULL, (void **)&device)) { device 791 daemons/fenced/pacemaker-fenced.c if (device->cib_registered) { device 792 daemons/fenced/pacemaker-fenced.c device->dirty = TRUE; device 804 daemons/fenced/pacemaker-fenced.c while (g_hash_table_iter_next(&iter, NULL, (void **)&device)) { device 805 daemons/fenced/pacemaker-fenced.c if (device->dirty) { device 131 include/crm/stonith-ng.h char *device; device 216 include/crm/stonith-ng.h const char *device, const char *provider, char **output, int timeout); device 1818 lib/fencing/st_client.c event->device = crm_element_value_copy(data, F_STONITH_DEVICE); device 1841 lib/fencing/st_client.c free(event->device); device 378 lib/fencing/st_output.c const char *device = va_arg(args, const char *); device 383 lib/fencing/st_output.c if (device) { device 384 lib/fencing/st_output.c char *buf = crm_strdup_printf("Validation of %s on %s %s", agent, device, device 403 lib/fencing/st_output.c const char *device = va_arg(args, const char *); device 408 lib/fencing/st_output.c if (device) { device 409 lib/fencing/st_output.c pcmk__indented_printf(out, "Validation of %s on %s %s\n", agent, device, device 424 lib/fencing/st_output.c const char *device = va_arg(args, const char *); device 434 lib/fencing/st_output.c if (device != NULL) { device 435 lib/fencing/st_output.c crm_xml_add(node, "device", device); device 343 tools/stonith_admin.c const char *device = NULL; device 398 tools/stonith_admin.c device = options.register_dev; device 403 tools/stonith_admin.c device = options.query; device 408 tools/stonith_admin.c device = options.unregister_dev; device 413 tools/stonith_admin.c device = options.targets; device 525 tools/stonith_admin.c rc = st->cmds->monitor(st, st_opts, device, options.timeout); device 527 tools/stonith_admin.c rc = st->cmds->list(st, st_opts, device, NULL, options.timeout); device 533 tools/stonith_admin.c rc = pcmk__fence_list_targets(out, st, device, options.timeout*1000); device 541 tools/stonith_admin.c rc = st->cmds->register_device(st, st_opts, device, NULL, options.agent, device 547 tools/stonith_admin.c rc = st->cmds->remove_device(st, st_opts, device); device 597 tools/stonith_admin.c device = options.devices ? options.devices->key : NULL; device 598 tools/stonith_admin.c rc = pcmk__fence_validate(out, st, options.agent, device, options.params,