corosync 3.1.7
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
coroapi.h File Reference
#include <config.h>
#include <stdio.h>
#include <corosync/hdb.h>
#include <qb/qbloop.h>
#include <corosync/swab.h>
Include dependency graph for coroapi.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  mar_message_source_t
 The mar_message_source_t struct. More...
 
struct  corosync_tpg_group
 The corosync_tpg_group struct. More...
 
struct  totem_ip_address
 The totem_ip_address struct. More...
 
struct  memb_ring_id
 The memb_ring_id struct. More...
 
struct  quorum_callin_functions
 The quorum_callin_functions struct. More...
 
struct  corosync_api_v1
 The corosync_api_v1 struct. More...
 
struct  corosync_lib_handler
 The corosync_lib_handler struct. More...
 
struct  corosync_exec_handler
 The corosync_exec_handler struct. More...
 
struct  corosync_service_engine_iface_ver0
 The corosync_service_engine_iface_ver0 struct. More...
 
struct  corosync_service_engine
 The corosync_service_engine struct. More...
 

Macros

#define TIMER_HANDLE_T   1
 
#define TOTEMIP_ADDRLEN   (sizeof(struct in6_addr))
 
#define INTERFACE_MAX   8
 
#define PROCESSOR_COUNT_MAX   384
 
#define MESSAGE_SIZE_MAX   1024*1024
 
#define MESSAGE_QUEUE_MAX   ((4 * MESSAGE_SIZE_MAX) / totem_config->net_mtu)
 
#define TOTEM_AGREED   0
 
#define TOTEM_SAFE   1
 
#define MILLI_2_NANO_SECONDS   1000000ULL
 
#define corosync_lib_flow_control   cs_lib_flow_control
 
#define COROSYNC_LIB_FLOW_CONTROL_REQUIRED   CS_LIB_FLOW_CONTROL_REQUIRED
 
#define COROSYNC_LIB_FLOW_CONTROL_NOT_REQUIRED   CS_LIB_FLOW_CONTROL_NOT_REQUIRED
 
#define corosync_flow_control_state   cs_flow_control_state
 
#define CS_FLOW_CONTROL_STATE_DISABLED   CS_FLOW_CONTROL_STATE_DISABLED
 
#define CS_FLOW_CONTROL_STATE_ENABLED   CS_FLOW_CONTROL_STATE_ENABLED
 
#define corosync_fatal_error_t   cs_fatal_error_t;
 
#define corosync_fatal_error(err)   api->fatal_error ((err), __FILE__, __LINE__)
 
#define SERVICE_ID_MAKE(a, b)   ( ((a)<<16) | (b) )
 
#define SERVICE_HANDLER_MAXIMUM_COUNT   64
 
#define SERVICES_COUNT_MAX   64
 

Typedefs

typedef qb_loop_timer_handle corosync_timer_handle_t
 corosync_timer_handle_t More...
 
typedef void(* quorum_callback_fn_t) (int quorate, void *context)
 The quorum_callback_fn_t callback. More...
 
typedef void(* sync_callback_fn_t) (const unsigned int *view_list, size_t view_list_entries, int primary_designated, struct memb_ring_id *ring_id)
 The sync_callback_fn_t callback. More...
 

Enumerations

enum  totem_configuration_type { TOTEM_CONFIGURATION_REGULAR , TOTEM_CONFIGURATION_TRANSITIONAL , TOTEM_CONFIGURATION_REGULAR , TOTEM_CONFIGURATION_TRANSITIONAL }
 The totem_configuration_type enum. More...
 
enum  totem_callback_token_type { TOTEM_CALLBACK_TOKEN_RECEIVED = 1 , TOTEM_CALLBACK_TOKEN_SENT = 2 , TOTEM_CALLBACK_TOKEN_RECEIVED = 1 , TOTEM_CALLBACK_TOKEN_SENT = 2 }
 The totem_callback_token_type enum. More...
 
enum  cs_lib_flow_control { CS_LIB_FLOW_CONTROL_REQUIRED = 1 , CS_LIB_FLOW_CONTROL_NOT_REQUIRED = 2 }
 The cs_lib_flow_control enum. More...
 
enum  cs_lib_allow_inquorate { CS_LIB_DISALLOW_INQUORATE = 0 , CS_LIB_ALLOW_INQUORATE = 1 }
 The cs_lib_allow_inquorate enum. More...
 
enum  cs_flow_control_state { CS_FLOW_CONTROL_STATE_DISABLED , CS_FLOW_CONTROL_STATE_ENABLED }
 The cs_flow_control_state enum. More...
 
enum  cs_fatal_error_t {
  COROSYNC_FATAL_ERROR_EXIT = -1 , COROSYNC_LIBAIS_SOCKET = -6 , COROSYNC_LIBAIS_BIND = -7 , COROSYNC_READKEY = -8 ,
  COROSYNC_INVALID_CONFIG = -9 , COROSYNC_DYNAMICLOAD = -12 , COROSYNC_OUT_OF_MEMORY = -15 , COROSYNC_FATAL_ERR = -16
}
 The cs_fatal_error_t enum. More...
 

Functions

struct totem_ip_address __attribute__ ((packed))
 

Variables

unsigned int nodeid
 
unsigned short family
 
unsigned char addr [TOTEMIP_ADDRLEN]
 
unsigned long long seq
 
enum totem_configuration_type __attribute__
 

Macro Definition Documentation

◆ corosync_fatal_error

#define corosync_fatal_error (   err)    api->fatal_error ((err), __FILE__, __LINE__)

Definition at line 424 of file coroapi.h.

◆ corosync_fatal_error_t

#define corosync_fatal_error_t   cs_fatal_error_t;

Definition at line 193 of file coroapi.h.

◆ corosync_flow_control_state

#define corosync_flow_control_state   cs_flow_control_state

Definition at line 175 of file coroapi.h.

◆ corosync_lib_flow_control

#define corosync_lib_flow_control   cs_lib_flow_control

Definition at line 155 of file coroapi.h.

◆ COROSYNC_LIB_FLOW_CONTROL_NOT_REQUIRED

#define COROSYNC_LIB_FLOW_CONTROL_NOT_REQUIRED   CS_LIB_FLOW_CONTROL_NOT_REQUIRED

Definition at line 157 of file coroapi.h.

◆ COROSYNC_LIB_FLOW_CONTROL_REQUIRED

#define COROSYNC_LIB_FLOW_CONTROL_REQUIRED   CS_LIB_FLOW_CONTROL_REQUIRED

Definition at line 156 of file coroapi.h.

◆ CS_FLOW_CONTROL_STATE_DISABLED

#define CS_FLOW_CONTROL_STATE_DISABLED   CS_FLOW_CONTROL_STATE_DISABLED

Definition at line 176 of file coroapi.h.

◆ CS_FLOW_CONTROL_STATE_ENABLED

#define CS_FLOW_CONTROL_STATE_ENABLED   CS_FLOW_CONTROL_STATE_ENABLED

Definition at line 177 of file coroapi.h.

◆ INTERFACE_MAX

#define INTERFACE_MAX   8

Definition at line 88 of file coroapi.h.

◆ MESSAGE_QUEUE_MAX

#define MESSAGE_QUEUE_MAX   ((4 * MESSAGE_SIZE_MAX) / totem_config->net_mtu)

Definition at line 98 of file coroapi.h.

◆ MESSAGE_SIZE_MAX

#define MESSAGE_SIZE_MAX   1024*1024

Definition at line 97 of file coroapi.h.

◆ MILLI_2_NANO_SECONDS

#define MILLI_2_NANO_SECONDS   1000000ULL

Definition at line 105 of file coroapi.h.

◆ PROCESSOR_COUNT_MAX

#define PROCESSOR_COUNT_MAX   384

Definition at line 96 of file coroapi.h.

◆ SERVICE_HANDLER_MAXIMUM_COUNT

#define SERVICE_HANDLER_MAXIMUM_COUNT   64

Definition at line 460 of file coroapi.h.

◆ SERVICE_ID_MAKE

#define SERVICE_ID_MAKE (   a,
 
)    ( ((a)<<16) | (b) )

Definition at line 458 of file coroapi.h.

◆ SERVICES_COUNT_MAX

#define SERVICES_COUNT_MAX   64

Definition at line 462 of file coroapi.h.

◆ TIMER_HANDLE_T

#define TIMER_HANDLE_T   1

Definition at line 75 of file coroapi.h.

◆ TOTEM_AGREED

#define TOTEM_AGREED   0

Definition at line 102 of file coroapi.h.

◆ TOTEM_SAFE

#define TOTEM_SAFE   1

Definition at line 103 of file coroapi.h.

◆ TOTEMIP_ADDRLEN

#define TOTEMIP_ADDRLEN   (sizeof(struct in6_addr))

Definition at line 86 of file coroapi.h.

Typedef Documentation

◆ corosync_timer_handle_t

typedef qb_loop_timer_handle corosync_timer_handle_t

corosync_timer_handle_t

Definition at line 74 of file coroapi.h.

◆ quorum_callback_fn_t

typedef void(* quorum_callback_fn_t) (int quorate, void *context)

The quorum_callback_fn_t callback.

Definition at line 199 of file coroapi.h.

◆ sync_callback_fn_t

typedef void(* sync_callback_fn_t) (const unsigned int *view_list, size_t view_list_entries, int primary_designated, struct memb_ring_id *ring_id)

The sync_callback_fn_t callback.

Definition at line 213 of file coroapi.h.

Enumeration Type Documentation

◆ cs_fatal_error_t

The cs_fatal_error_t enum.

Enumerator
COROSYNC_FATAL_ERROR_EXIT 
COROSYNC_LIBAIS_SOCKET 
COROSYNC_LIBAIS_BIND 
COROSYNC_READKEY 
COROSYNC_INVALID_CONFIG 
COROSYNC_DYNAMICLOAD 
COROSYNC_OUT_OF_MEMORY 
COROSYNC_FATAL_ERR 

Definition at line 183 of file coroapi.h.

◆ cs_flow_control_state

The cs_flow_control_state enum.

Enumerator
CS_FLOW_CONTROL_STATE_DISABLED 
CS_FLOW_CONTROL_STATE_ENABLED 

Definition at line 171 of file coroapi.h.

◆ cs_lib_allow_inquorate

The cs_lib_allow_inquorate enum.

Enumerator
CS_LIB_DISALLOW_INQUORATE 
CS_LIB_ALLOW_INQUORATE 

Definition at line 162 of file coroapi.h.

◆ cs_lib_flow_control

The cs_lib_flow_control enum.

Enumerator
CS_LIB_FLOW_CONTROL_REQUIRED 
CS_LIB_FLOW_CONTROL_NOT_REQUIRED 

Definition at line 151 of file coroapi.h.

◆ totem_callback_token_type

The totem_callback_token_type enum.

Enumerator
TOTEM_CALLBACK_TOKEN_RECEIVED 
TOTEM_CALLBACK_TOKEN_SENT 
TOTEM_CALLBACK_TOKEN_RECEIVED 
TOTEM_CALLBACK_TOKEN_SENT 

Definition at line 142 of file coroapi.h.

◆ totem_configuration_type

The totem_configuration_type enum.

Enumerator
TOTEM_CONFIGURATION_REGULAR 
TOTEM_CONFIGURATION_TRANSITIONAL 
TOTEM_CONFIGURATION_REGULAR 
TOTEM_CONFIGURATION_TRANSITIONAL 

Definition at line 132 of file coroapi.h.

Function Documentation

◆ __attribute__()

struct totem_ip_address __attribute__ ( (packed)  )

Variable Documentation

◆ __attribute__

enum totem_configuration_type __attribute__

◆ addr

unsigned char addr[TOTEMIP_ADDRLEN]

Definition at line 2 of file coroapi.h.

Referenced by totemip_is_mcast(), totemip_parse(), totemip_print(), and totemsrp_mcast().

◆ family

unsigned short family

Definition at line 1 of file coroapi.h.

Referenced by totemip_compare(), totemip_udpip_header_size(), and totempg_ifaces_print().

◆ nodeid

uint32_t nodeid

◆ seq

unsigned int seq

Definition at line 1 of file coroapi.h.