Centrally define all the default capabilities to make the defaults
crystal clear. Capability-related command-line options now have a
direct correspondence rather than a reverse correspondence.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Michael Adam <obnox@samba.org>
*/
#define CTDB_CAP_PARALLEL_RECOVERY 0x00010000
-#define CTDB_CAP_DEFAULT (CTDB_CAP_PARALLEL_RECOVERY)
+#define CTDB_CAP_FEATURES (CTDB_CAP_PARALLEL_RECOVERY)
+#define CTDB_CAP_DEFAULT (CTDB_CAP_RECMASTER | \
+ CTDB_CAP_LMASTER | \
+ CTDB_CAP_FEATURES)
struct ctdb_public_ip {
uint32_t pnn;
/* set ctdbd capabilities */
ctdb->capabilities = CTDB_CAP_DEFAULT;
- if (options.no_lmaster == 0) {
- ctdb->capabilities |= CTDB_CAP_LMASTER;
+ if (options.no_lmaster != 0) {
+ ctdb->capabilities &= ~CTDB_CAP_LMASTER;
}
- if (options.no_recmaster == 0) {
- ctdb->capabilities |= CTDB_CAP_RECMASTER;
+ if (options.no_recmaster != 0) {
+ ctdb->capabilities &= ~CTDB_CAP_RECMASTER;
}
if (options.lvs != 0) {
ctdb->capabilities |= CTDB_CAP_LVS;