corosync 3.1.9
|
#include <config.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/uio.h>
#include <errno.h>
#include <qb/qbipcc.h>
#include <corosync/corotypes.h>
#include <corosync/corodefs.h>
#include <corosync/hdb.h>
#include <corosync/quorum.h>
#include <corosync/ipc_quorum.h>
#include "util.h"
Go to the source code of this file.
Data Structures | |
struct | quorum_inst |
DECLARE_HDB_DATABASE | ( | quorum_handle_t_db | , |
quorum_inst_free | |||
) |
cs_error_t quorum_context_get | ( | quorum_handle_t | handle, |
const void ** | context | ||
) |
quorum_context_get
handle | |
context |
Definition at line 299 of file lib/quorum.c.
References quorum_inst::context, CS_OK, hdb_error_to_cs(), and nodeid.
cs_error_t quorum_context_set | ( | quorum_handle_t | handle, |
const void * | context | ||
) |
quorum_context_set
handle | |
context |
Definition at line 318 of file lib/quorum.c.
References quorum_inst::context, CS_OK, hdb_error_to_cs(), and nodeid.
cs_error_t quorum_dispatch | ( | quorum_handle_t | handle, |
cs_dispatch_flags_t | dispatch_types | ||
) |
Dispatch messages and configuration changes.
handle | |
dispatch_types |
Definition at line 418 of file lib/quorum.c.
References quorum_inst::c, CS_DISPATCH_ALL, CS_DISPATCH_BLOCKING, CS_DISPATCH_ONE, CS_DISPATCH_ONE_NONBLOCKING, CS_ERR_BAD_HANDLE, CS_ERR_INVALID_PARAM, CS_ERR_LIBRARY, CS_ERR_TRY_AGAIN, CS_OK, quorum_inst::finalize, hdb_error_to_cs(), IPC_DISPATCH_SIZE, res_lib_quorum_v1_nodelist_notification::member_list, MESSAGE_RES_QUORUM_NOTIFICATION, MESSAGE_RES_QUORUM_V1_NODELIST_NOTIFICATION, MESSAGE_RES_QUORUM_V1_QUORUM_NOTIFICATION, nodeid, memb_ring_id::nodeid, qb_to_cs_error(), QUORUM_MODEL_V0, QUORUM_MODEL_V1, ring_id, memb_ring_id::seq, res_lib_quorum_notification::view_list, and res_lib_quorum_v1_quorum_notification::view_list.
Referenced by sam_initialize().
cs_error_t quorum_fd_get | ( | quorum_handle_t | handle, |
int * | fd | ||
) |
Get a file descriptor on which to poll.
handle | |
fd |
Definition at line 279 of file lib/quorum.c.
References quorum_inst::c, CS_OK, hdb_error_to_cs(), nodeid, and qb_to_cs_error().
Referenced by sam_initialize().
cs_error_t quorum_finalize | ( | quorum_handle_t | handle | ) |
Close the quorum handle.
handle |
Definition at line 209 of file lib/quorum.c.
References CS_ERR_BAD_HANDLE, CS_OK, quorum_inst::finalize, hdb_error_to_cs(), and nodeid.
Referenced by sam_initialize(), and sam_register().
cs_error_t quorum_getquorate | ( | quorum_handle_t | handle, |
int * | quorate | ||
) |
Get quorum information.
handle | |
quorate |
Definition at line 237 of file lib/quorum.c.
References quorum_inst::c, CS_IPC_TIMEOUT_MS, CS_OK, hdb_error_to_cs(), MESSAGE_REQ_QUORUM_GETQUORATE, nodeid, qb_to_cs_error(), res_lib_quorum_getquorate::quorate, and quorate.
cs_error_t quorum_initialize | ( | quorum_handle_t * | handle, |
quorum_callbacks_t * | callbacks, | ||
uint32_t * | quorum_type | ||
) |
Create a new quorum connection.
handle | |
callbacks | |
quorum_type |
Definition at line 73 of file lib/quorum.c.
References nodeid, quorum_model_initialize(), QUORUM_MODEL_V0, quorum_callbacks_t::quorum_notify_fn, and quorum_model_v0_data_t::quorum_notify_fn.
Referenced by sam_initialize().
cs_error_t quorum_model_initialize | ( | quorum_handle_t * | handle, |
quorum_model_t | model, | ||
quorum_model_data_t * | model_data, | ||
uint32_t * | quorum_type, | ||
void * | context | ||
) |
Definition at line 90 of file lib/quorum.c.
References quorum_inst::c, quorum_inst::context, CS_ERR_INVALID_PARAM, CS_OK, quorum_inst::finalize, hdb_error_to_cs(), IPC_REQUEST_SIZE, MESSAGE_REQ_QUORUM_GETTYPE, MESSAGE_REQ_QUORUM_MODEL_GETTYPE, quorum_model_data_t::model, quorum_inst::model_data, quorum_inst::model_v0_data, quorum_inst::model_v1_data, nodeid, qb_to_cs_error(), QUORUM_MODEL_V0, QUORUM_MODEL_V1, and res_lib_quorum_gettype::quorum_type.
Referenced by quorum_initialize().
cs_error_t quorum_trackstart | ( | quorum_handle_t | handle, |
unsigned int | flags | ||
) |
Track node and quorum changes.
handle | |
flags |
Definition at line 338 of file lib/quorum.c.
References quorum_inst::c, CS_IPC_TIMEOUT_MS, CS_OK, flags, hdb_error_to_cs(), MESSAGE_REQ_QUORUM_TRACKSTART, nodeid, qb_to_cs_error(), and req_lib_quorum_trackstart::track_flags.
Referenced by sam_initialize().
cs_error_t quorum_trackstop | ( | quorum_handle_t | handle | ) |
quorum_trackstop
handle |
Definition at line 379 of file lib/quorum.c.
References quorum_inst::c, CS_IPC_TIMEOUT_MS, CS_OK, hdb_error_to_cs(), MESSAGE_REQ_QUORUM_TRACKSTOP, nodeid, and qb_to_cs_error().