^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0-only */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /******************************************************************************
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) *******************************************************************************
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) **
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) ** Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) ** Copyright (C) 2004-2011 Red Hat, Inc. All rights reserved.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) **
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) **
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) *******************************************************************************
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) ******************************************************************************/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) #ifndef __CONFIG_DOT_H__
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) #define __CONFIG_DOT_H__
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #define DEFAULT_BUFFER_SIZE 4096
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) struct dlm_config_node {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) int nodeid;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) int weight;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) int new;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) uint32_t comm_seq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) #define DLM_MAX_ADDR_COUNT 3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) struct dlm_config_info {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) int ci_tcp_port;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) int ci_buffer_size;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) int ci_rsbtbl_size;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) int ci_recover_timer;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) int ci_toss_secs;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) int ci_scan_secs;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) int ci_log_debug;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) int ci_log_info;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) int ci_protocol;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) int ci_mark;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) int ci_timewarn_cs;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) int ci_waitwarn_us;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) int ci_new_rsb_count;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) int ci_recover_callbacks;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) char ci_cluster_name[DLM_LOCKSPACE_LEN];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) extern struct dlm_config_info dlm_config;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) int dlm_config_init(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) void dlm_config_exit(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) int dlm_config_nodes(char *lsname, struct dlm_config_node **nodes_out,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) int *count_out);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) int dlm_comm_seq(int nodeid, uint32_t *seq);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) void dlm_comm_mark(int nodeid, unsigned int *mark);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) int dlm_our_nodeid(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) int dlm_our_addr(struct sockaddr_storage *addr, int num);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) #endif /* __CONFIG_DOT_H__ */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56)