pacemaker  2.1.3-ea053b43a
Scalable High-Availability cluster resource manager
pcmki_fence.h
Go to the documentation of this file.
1 /*
2  * Copyright 2019-2022 the Pacemaker project contributors
3  *
4  * The version control history for this file may have further details.
5  *
6  * This source code is licensed under the GNU Lesser General Public License
7  * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
8  */
9 #ifndef PCMK__PCMKI_PCMKI_FENCE__H
10 # define PCMK__PCMKI_PCMKI_FENCE__H
11 
12 # include <crm/stonith-ng.h>
14 
22 };
23 
49 int pcmk__request_fencing(stonith_t *st, const char *target, const char *action,
50  const char *name, unsigned int timeout,
51  unsigned int tolerance, int delay, char **reason);
52 
74  unsigned int timeout, int verbose, bool broadcast,
75  bool cleanup);
76 
93 int pcmk__fence_installed(pcmk__output_t *out, stonith_t *st, unsigned int timeout);
94 
111 int pcmk__fence_last(pcmk__output_t *out, const char *target, bool as_nodeid);
112 
131  const char *device_id, unsigned int timeout);
132 
150 int pcmk__fence_metadata(pcmk__output_t *out, stonith_t *st, char *agent,
151  unsigned int timeout);
152 
172  unsigned int timeout);
173 
192 int pcmk__fence_register_level(stonith_t *st, char *target, int fence_level,
193  stonith_key_value_t *devices);
194 
212 int pcmk__fence_unregister_level(stonith_t *st, char *target, int fence_level);
213 
233 int pcmk__fence_validate(pcmk__output_t *out, stonith_t *st, const char *agent,
234  const char *id, stonith_key_value_t *params,
235  unsigned int timeout);
236 
246 int
248  enum pcmk__fence_history fence_history);
249 #endif
int pcmk__fence_last(pcmk__output_t *out, const char *target, bool as_nodeid)
When was a device last fenced?
Definition: pcmk_fence.c:354
const char * name
Definition: cib.c:24
pcmk__fence_history
Control how much of the fencing history is output.
Definition: pcmki_fence.h:18
int pcmk__fence_registered(pcmk__output_t *out, stonith_t *st, char *target, unsigned int timeout)
List registered fence devices.
Definition: pcmk_fence.c:471
const char * action
Definition: pcmk_fence.c:29
int pcmk__fence_unregister_level(stonith_t *st, char *target, int fence_level)
Unregister a fencing level for a specific node, node regex, or attribute.
Definition: pcmk_fence.c:531
Formatted output for pacemaker tools.
stonith_t * st
Definition: pcmk_fence.c:27
unsigned int tolerance
Definition: pcmk_fence.c:32
int pcmk__fence_metadata(pcmk__output_t *out, stonith_t *st, char *agent, unsigned int timeout)
Get metadata for a resource.
Definition: pcmk_fence.c:435
int pcmk__fence_list_targets(pcmk__output_t *out, stonith_t *st, const char *device_id, unsigned int timeout)
List nodes that can be fenced.
Definition: pcmk_fence.c:390
int pcmk__request_fencing(stonith_t *st, const char *target, const char *action, const char *name, unsigned int timeout, unsigned int tolerance, int delay, char **reason)
Ask the cluster to perform fencing.
Definition: pcmk_fence.c:181
int pcmk__fence_register_level(stonith_t *st, char *target, int fence_level, stonith_key_value_t *devices)
Register a fencing level for a specific node, node regex, or attribute.
Definition: pcmk_fence.c:517
const char * target
Definition: pcmk_fence.c:28
int delay
Definition: pcmk_fence.c:33
int pcmk__fence_installed(pcmk__output_t *out, stonith_t *st, unsigned int timeout)
List all installed STONITH agents.
Definition: pcmk_fence.c:314
Fencing aka. STONITH.
This structure contains everything that makes up a single output formatter.
int pcmk__get_fencing_history(stonith_t *st, stonith_history_t **stonith_history, enum pcmk__fence_history fence_history)
Fetch STONITH history, optionally reducing it.
Definition: pcmk_fence.c:578
int pcmk__fence_validate(pcmk__output_t *out, stonith_t *st, const char *agent, const char *id, stonith_key_value_t *params, unsigned int timeout)
Validate a STONITH device configuration.
Definition: pcmk_fence.c:543
unsigned int timeout
Definition: pcmk_fence.c:31