35 #ifndef IPC_VOTEQUORUM_H_DEFINED
36 #define IPC_VOTEQUORUM_H_DEFINED
39 #define VOTEQUORUM_QDEVICE_NODEID 0
40 #define VOTEQUORUM_QDEVICE_MAX_NAME_LEN 255
41 #define VOTEQUORUM_QDEVICE_DEFAULT_TIMEOUT 10000
82 struct qb_ipc_request_header header __attribute__((aligned(8)));
90 struct qb_ipc_request_header header __attribute__((aligned(8)));
98 struct qb_ipc_request_header header __attribute__((aligned(8)));
107 struct qb_ipc_request_header header __attribute__((aligned(8)));
117 struct qb_ipc_request_header header __attribute__((aligned(8)));
126 struct qb_ipc_request_header header __attribute__((aligned(8)));
135 struct qb_ipc_request_header header __attribute__((aligned(8)));
143 struct qb_ipc_request_header header __attribute__((aligned(8)));
152 struct qb_ipc_request_header header __attribute__((aligned(8)));
159 struct qb_ipc_request_header header __attribute__((aligned(8)));
167 struct qb_ipc_response_header header __attribute__((aligned(8)));
170 #define VOTEQUORUM_INFO_TWONODE 1
171 #define VOTEQUORUM_INFO_QUORATE 2
172 #define VOTEQUORUM_INFO_WAIT_FOR_ALL 4
173 #define VOTEQUORUM_INFO_LAST_MAN_STANDING 8
174 #define VOTEQUORUM_INFO_AUTO_TIE_BREAKER 16
175 #define VOTEQUORUM_INFO_ALLOW_DOWNSCALE 32
176 #define VOTEQUORUM_INFO_QDEVICE_REGISTERED 64
177 #define VOTEQUORUM_INFO_QDEVICE_ALIVE 128
178 #define VOTEQUORUM_INFO_QDEVICE_CAST_VOTE 256
179 #define VOTEQUORUM_INFO_QDEVICE_MASTER_WINS 512
181 #define VOTEQUORUM_NODESTATE_MEMBER 1
182 #define VOTEQUORUM_NODESTATE_DEAD 2
183 #define VOTEQUORUM_NODESTATE_LEAVING 3
189 struct qb_ipc_response_header header __attribute__((aligned(8)));
214 struct qb_ipc_response_header header __attribute__((aligned(8)));
226 struct qb_ipc_response_header header __attribute__((aligned(8)));
236 static inline void marshall_from_mar_votequorum_ring_id (
249 static inline void marshall_to_mar_votequorum_ring_id (
char name[VOTEQUORUM_QDEVICE_MAX_NAME_LEN]
char newname[VOTEQUORUM_QDEVICE_MAX_NAME_LEN]
req_votequorum_types
The req_votequorum_types enum.
The req_lib_votequorum_qdevice_master_wins struct.
struct qb_ipc_response_header header __attribute__((aligned(8)))
char name[VOTEQUORUM_QDEVICE_MAX_NAME_LEN]
char qdevice_name[VOTEQUORUM_QDEVICE_MAX_NAME_LEN]
The req_lib_votequorum_qdevice_unregister struct.
unsigned int highest_expected
The res_lib_votequorum_status struct.
char name[VOTEQUORUM_QDEVICE_MAX_NAME_LEN]
The req_lib_votequorum_general struct.
struct qb_ipc_response_header header __attribute__((aligned(8)))
unsigned int expected_votes
The res_lib_votequorum_notification struct.
The req_lib_votequorum_getinfo struct.
char name[VOTEQUORUM_QDEVICE_MAX_NAME_LEN]
The req_lib_votequorum_qdevice_update struct.
The req_lib_votequorum_setvotes struct.
The req_lib_votequorum_setexpected struct.
The mar_votequorum_ring_id struct.
The res_lib_votequorum_expectedvotes_notification struct.
The req_lib_votequorum_qdevice_register struct.
The votequorum_node struct.
unsigned int qdevice_votes
The req_lib_votequorum_trackstart struct.
#define VOTEQUORUM_QDEVICE_MAX_NAME_LEN
The req_lib_votequorum_qdevice_poll struct.
char oldname[VOTEQUORUM_QDEVICE_MAX_NAME_LEN]
The votequorum_ring_id_t struct.
The res_lib_votequorum_getinfo struct.
res_votequorum_types
The res_votequorum_types enum.
struct memb_ring_id ring_id
unsigned int expected_votes