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)