DOKK / manpages / debian 11 / libvotequorum-dev / votequorum_getinfo.3.en
VOTEQUORUM_GETINFO(3) Corosync Cluster Engine Programmer's Manual VOTEQUORUM_GETINFO(3)

votequorum_getinfo - Get information about the VoteQuorum service

#include <corosync/votequorum.h>

int votequorum_getinfo(votequorum_handle_t *handle, unsigned int nodeid, struct votequorum_info *info);

The votequorum_getinfo function is used to get information about the voting system and its nodes.

The nodeid argument indicates which node information should be stored in the votequorum_info structure.

The votequorum_info structure is defined as follows:

struct votequorum_info {

unsigned int node_id;
unsigned int node_state;
unsigned int node_votes;
unsigned int node_expected_votes;
unsigned int highest_expected;
unsigned int total_votes;
unsigned int quorum;
unsigned int flags;
unsigned int qdevice_votes;
char qdevice_name[VOTEQUORUM_QDEVICE_MAX_NAME_LEN]; };
The node_state is defined as:
#define VOTEQUORUM_NODESTATE_MEMBER     1
#define VOTEQUORUM_NODESTATE_DEAD       2
#define VOTEQUORUM_NODESTATE_LEAVING    3
The flags are defined as:
#define VOTEQUORUM_INFO_TWONODE                 1
#define VOTEQUORUM_INFO_QUORATE                 2
#define VOTEQUORUM_INFO_WAIT_FOR_ALL            4
#define VOTEQUORUM_INFO_LAST_MAN_STANDING       8
#define VOTEQUORUM_INFO_AUTO_TIE_BREAKER       16
#define VOTEQUORUM_INFO_ALLOW_DOWNSCALE        32
#define VOTEQUORUM_INFO_QDEVICE_REGISTERED     64
#define VOTEQUORUM_INFO_QDEVICE_ALIVE         128
#define VOTEQUORUM_INFO_QDEVICE_CAST_VOTE     256
#define VOTEQUORUM_INFO_QDEVICE_MASTER_WINS   512

The members starting node_ hold information specific to the requested nodeid, the other are general to the voting system.

This call returns the CS_OK value if successful, otherwise a generic error is returned.

CS_ERR_TRY_AGAIN Resource temporarily unavailable

CS_ERR_INVALID_PARAM Invalid argument

CS_ERR_ACCESS Permission denied

CS_ERR_LIBRARY The connection failed

CS_ERR_INTERRUPT System call interrupted by a signal

CS_ERR_NOT_SUPPORTED The requested protocol/functionality not supported

CS_ERR_MESSAGE_ERROR Incorrect auth message received

CS_ERR_NO_MEMORY Not enough memory to complete the requested task

votequorum_overview(3), votequorum_initialize(3), votequorum_finalize(3), votequorum_trackstart(3), votequorum_trackstop(3), votequorum_fd_get(3), votequorum_dispatch(3), votequorum_context_set(3), votequorum_context_get(3), votequorum_setexpected(3), votequorum_setvotes(3)

2021-07-05 corosync Man Page