ctdb-config: [cluster] recovery lock -> [cluster] cluster lock
[kseeger/samba-autobuild-v4-16-test/.git] / ctdb / server / ctdb_config.h
1 /*
2    CTDB daemon config handling
3
4    Copyright (C) Martin Schwenke  2018
5
6    This program is free software; you can redistribute it and/or modify
7    it under the terms of the GNU General Public License as published by
8    the Free Software Foundation; either version 3 of the License, or
9    (at your option) any later version.
10
11    This program is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15
16    You should have received a copy of the GNU General Public License
17    along with this program; if not, see <http://www.gnu.org/licenses/>.
18 */
19
20 #ifndef __CTDB_CONFIG_H__
21 #define __CTDB_CONFIG_H__
22
23 #include "common/conf.h"
24
25 struct ctdb_config {
26         /* Cluster */
27         const char *transport;
28         const char *node_address;
29         const char *cluster_lock;
30         const char *recovery_lock;
31
32         /* Database */
33         const char *dbdir_volatile;
34         const char *dbdir_persistent;
35         const char *dbdir_state;
36         const char *lock_debug_script;
37         bool tdb_mutexes;
38
39         /* Event */
40         const char *event_debug_script;
41
42         /* Failover */
43         bool failover_disabled;
44
45         /* Legacy */
46         bool realtime_scheduling;
47         bool recmaster_capability;
48         bool lmaster_capability;
49         bool start_as_stopped;
50         bool start_as_disabled;
51         const char *script_log_level;
52 };
53
54 extern struct ctdb_config ctdb_config;
55
56 int ctdbd_config_load(TALLOC_CTX *mem_ctx, struct conf_context **conf);
57
58 #endif /* __CTDB_CONFIG_H__ */