pacemaker  2.1.3-ea053b43a
Scalable High-Availability cluster resource manager
Data Structures | Enumerations | Functions
ipc_controld.h File Reference

IPC commands for Pacemaker controller. More...

#include <stdbool.h>
#include <glib.h>
#include <libxml/tree.h>
#include <crm/common/ipc.h>
Include dependency graph for ipc_controld.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  pcmk_controld_api_node_t
 
struct  pcmk_controld_api_reply_t
 

Enumerations

enum  pcmk_controld_api_reply {
  pcmk_controld_reply_unknown, pcmk_controld_reply_reprobe, pcmk_controld_reply_info, pcmk_controld_reply_resource,
  pcmk_controld_reply_ping, pcmk_controld_reply_nodes
}
 Possible types of controller replies. More...
 

Functions

int pcmk_controld_api_reprobe (pcmk_ipc_api_t *api, const char *target_node, const char *router_node)
 Send a reprobe controller operation. More...
 
int pcmk_controld_api_node_info (pcmk_ipc_api_t *api, uint32_t nodeid)
 Send a "node info" controller operation. More...
 
int pcmk_controld_api_fail (pcmk_ipc_api_t *api, const char *target_node, const char *router_node, const char *rsc_id, const char *rsc_long_id, const char *standard, const char *provider, const char *type)
 Ask the controller to fail a resource. More...
 
int pcmk_controld_api_refresh (pcmk_ipc_api_t *api, const char *target_node, const char *router_node, const char *rsc_id, const char *rsc_long_id, const char *standard, const char *provider, const char *type, bool cib_only)
 Ask the controller to refresh a resource. More...
 
int pcmk_controld_api_ping (pcmk_ipc_api_t *api, const char *node_name)
 Ask the controller for status. More...
 
int pcmk_controld_api_list_nodes (pcmk_ipc_api_t *api)
 Ask the controller for cluster information. More...
 
unsigned int pcmk_controld_api_replies_expected (pcmk_ipc_api_t *api)
 Get the number of IPC replies currently expected from the controller. More...
 

Detailed Description

IPC commands for Pacemaker controller.

Definition in file ipc_controld.h.

Enumeration Type Documentation

◆ pcmk_controld_api_reply

Possible types of controller replies.

Enumerator
pcmk_controld_reply_unknown 
pcmk_controld_reply_reprobe 
pcmk_controld_reply_info 
pcmk_controld_reply_resource 
pcmk_controld_reply_ping 
pcmk_controld_reply_nodes 

Definition at line 31 of file ipc_controld.h.

Function Documentation

◆ pcmk_controld_api_fail()

int pcmk_controld_api_fail ( pcmk_ipc_api_t api,
const char *  target_node,
const char *  router_node,
const char *  rsc_id,
const char *  rsc_long_id,
const char *  standard,
const char *  provider,
const char *  type 
)

Ask the controller to fail a resource.

Parameters
[in]apiController connection
[in]target_nodeName of node resource is on
[in]router_nodeRouter node for target
[in]rsc_idID of resource to fail
[in]rsc_long_idLong ID of resource (if any)
[in]standardStandard of resource
[in]providerProvider of resource (if any)
[in]typeType of resource to fail
Returns
Standard Pacemaker return code
Note
Event callback will get a reply of type pcmk_controld_reply_resource.

Definition at line 529 of file ipc_controld.c.

◆ pcmk_controld_api_list_nodes()

int pcmk_controld_api_list_nodes ( pcmk_ipc_api_t api)

Ask the controller for cluster information.

Parameters
[in]apiController connection
Returns
Standard Pacemaker return code
Note
Event callback will get a reply of type pcmk_controld_reply_nodes.

Definition at line 437 of file ipc_controld.c.

◆ pcmk_controld_api_node_info()

int pcmk_controld_api_node_info ( pcmk_ipc_api_t api,
uint32_t  nodeid 
)

Send a "node info" controller operation.

Parameters
[in]apiController connection
[in]nodeidID of node to get info for (or 0 for local node)
Returns
Standard Pacemaker return code
Note
Event callback will get a reply of type pcmk_controld_reply_info.

Definition at line 386 of file ipc_controld.c.

◆ pcmk_controld_api_ping()

int pcmk_controld_api_ping ( pcmk_ipc_api_t api,
const char *  node_name 
)

Ask the controller for status.

Parameters
[in]apiController connection
[in]node_nameName of node whose status is desired (or NULL for DC)
Returns
Standard Pacemaker return code
Note
Event callback will get a reply of type pcmk_controld_reply_ping.

Definition at line 414 of file ipc_controld.c.

◆ pcmk_controld_api_refresh()

int pcmk_controld_api_refresh ( pcmk_ipc_api_t api,
const char *  target_node,
const char *  router_node,
const char *  rsc_id,
const char *  rsc_long_id,
const char *  standard,
const char *  provider,
const char *  type,
bool  cib_only 
)

Ask the controller to refresh a resource.

Parameters
[in]apiController connection
[in]target_nodeName of node resource is on
[in]router_nodeRouter node for target
[in]rsc_idID of resource to refresh
[in]rsc_long_idLong ID of resource (if any)
[in]standardStandard of resource
[in]providerProvider of resource (if any)
[in]typeType of resource
[in]cib_onlyIf true, clean resource from CIB only
Returns
Standard Pacemaker return code
Note
Event callback will get a reply of type pcmk_controld_reply_resource.

Definition at line 560 of file ipc_controld.c.

◆ pcmk_controld_api_replies_expected()

unsigned int pcmk_controld_api_replies_expected ( pcmk_ipc_api_t api)

Get the number of IPC replies currently expected from the controller.

Parameters
[in]apiController IPC API connection
Returns
Number of replies expected

Definition at line 582 of file ipc_controld.c.

◆ pcmk_controld_api_reprobe()

int pcmk_controld_api_reprobe ( pcmk_ipc_api_t api,
const char *  target_node,
const char *  router_node 
)

Send a reprobe controller operation.

Parameters
[in]apiController connection
[in]target_nodeName of node to reprobe
[in]router_nodeRouter node for host
Returns
Standard Pacemaker return code
Note
Event callback will get a reply of type pcmk_controld_reply_reprobe.

Definition at line 351 of file ipc_controld.c.