35#ifndef TOTEM_H_DEFINED
36#define TOTEM_H_DEFINED
42#ifdef HAVE_SMALL_MEMORY_FOOTPRINT
43#define PROCESSOR_COUNT_MAX 16
44#define MESSAGE_SIZE_MAX 1024*64
45#define MESSAGE_QUEUE_MAX 512
47#define PROCESSOR_COUNT_MAX 384
48#define MESSAGE_SIZE_MAX 1024*1024
49#define MESSAGE_QUEUE_MAX ((4 * MESSAGE_SIZE_MAX) / totem_config->net_mtu)
52#define FRAME_SIZE_MAX KNET_MAX_PACKET_SIZE
54#define CONFIG_STRING_LEN_MAX 128
62#define UDP_RECEIVE_FRAME_SIZE_MAX (PROCESSOR_COUNT_MAX * (INTERFACE_MAX * 2 * sizeof(struct totem_ip_address)) + 1024)
64#define TRANSMITS_ALLOWED 16
65#define SEND_THREADS_MAX 16
68#define INTERFACE_MAX 8
70#define BIND_MAX_RETRIES 10
71#define BIND_RETRIES_INTERVAL 100
76#define MAX_NO_CONT_GATHER 3
80#define MAX_NO_CONT_SENDMSG_FAILURES 30
104 const char *function_name,
105 const char *file_name,
123#define TOTEM_MH_MAGIC 0xC070
124#define TOTEM_MH_VERSION 0x03
151 unsigned long long seq;
264#define TOTEM_NODE_STATUS_STRUCTURE_VERSION 1
278#define TOTEM_CONFIGURATION_TYPE
284#define TOTEM_CALLBACK_TOKEN_TYPE
totem_configuration_type
The totem_configuration_type enum.
totem_callback_token_type
The totem_callback_token_type enum.
char crypto_model[CONFIG_STRING_LEN_MAX]
unsigned int max_messages
unsigned int heartbeat_failures_allowed
unsigned int token_timeout
unsigned int private_key_len
unsigned int broadcast_use
uint32_t knet_compression_threshold
unsigned int downcheck_timeout
unsigned int miss_count_const
totem_transport_t transport_number
struct totem_interface * interfaces
unsigned int cancel_token_hold_on_retransmit
unsigned int fail_to_recv_const
unsigned int clear_node_high_bit
unsigned int merge_timeout
struct totem_interface * orig_interfaces
int knet_compression_level
void(* totem_memb_ring_id_create_or_load)(struct memb_ring_id *memb_ring_id, unsigned int nodeid)
char knet_compression_model[CONFIG_STRING_LEN_MAX]
unsigned int block_unlisted_ips
unsigned int token_retransmits_before_loss_const
unsigned char private_key[TOTEM_PRIVATE_KEY_LEN_MAX]
unsigned int max_network_delay
unsigned int seqno_unchanged_const
unsigned int consensus_timeout
unsigned int knet_pmtud_interval
char crypto_cipher_type[CONFIG_STRING_LEN_MAX]
unsigned int send_join_timeout
char link_mode[TOTEM_LINK_MODE_BYTES]
enum totem_ip_version_enum ip_version
void(* totem_memb_ring_id_store)(const struct memb_ring_id *memb_ring_id, unsigned int nodeid)
unsigned int token_retransmit_timeout
char crypto_hash_type[CONFIG_STRING_LEN_MAX]
unsigned int token_warning
unsigned int join_timeout
unsigned int token_hold_timeout
struct totem_ip_address local_ip
struct totem_ip_address boundto
struct totem_ip_address bindnet
struct totem_ip_address member_list[PROCESSOR_COUNT_MAX]
struct totem_ip_address mcast_addr
The totem_ip_address struct.
void(* log_printf)(int level, int subsys, const char *function_name, const char *file_name, int file_line, const char *format,...) __attribute__((format(printf
void(*) in log_level_security)
struct knet_link_status link_status[KNET_MAX_LINK]
@ TOTEM_CONFIGURATION_REGULAR
@ TOTEM_CONFIGURATION_TRANSITIONAL
@ TOTEM_EVENT_DELIVERY_CONGESTED
@ TOTEM_PRIVATE_KEY_LEN_MAX
@ TOTEM_PRIVATE_KEY_LEN_MIN
cfg_message_crypto_reconfig_phase_t
@ CRYPTO_RECONFIG_PHASE_CLEANUP
@ CRYPTO_RECONFIG_PHASE_ACTIVATE
@ TOTEM_CALLBACK_TOKEN_SENT
@ TOTEM_CALLBACK_TOKEN_RECEIVED
#define CONFIG_STRING_LEN_MAX
#define PROCESSOR_COUNT_MAX