summaryrefslogtreecommitdiffstats
path: root/ctdb/include
diff options
context:
space:
mode:
authorRonnie Sahlberg <sahlberg@ronnie>2007-06-07 09:16:17 +1000
committerRonnie Sahlberg <sahlberg@ronnie>2007-06-07 09:16:17 +1000
commit9ff733c784bae7150e3772f3318ab8a6274aa81c (patch)
treeafe2a953db3c421eaf5ccb713d15dd496acb4450 /ctdb/include
parent2485d1ef030737a3c05d470c3631a31f1bdca13b (diff)
downloadsamba-9ff733c784bae7150e3772f3318ab8a6274aa81c.tar.gz
samba-9ff733c784bae7150e3772f3318ab8a6274aa81c.tar.xz
samba-9ff733c784bae7150e3772f3318ab8a6274aa81c.zip
add a control to permanently enable/disable a node
(This used to be ctdb commit d66fdba16ca22f62ddac6882a17614879b08a798)
Diffstat (limited to 'ctdb/include')
-rw-r--r--ctdb/include/ctdb.h5
-rw-r--r--ctdb/include/ctdb_private.h6
2 files changed, 8 insertions, 3 deletions
diff --git a/ctdb/include/ctdb.h b/ctdb/include/ctdb.h
index 8a19c19ec53..4e8fe4fa3c0 100644
--- a/ctdb/include/ctdb.h
+++ b/ctdb/include/ctdb.h
@@ -351,6 +351,9 @@ int ctdb_ctrl_list_tunables(struct ctdb_context *ctdb,
TALLOC_CTX *mem_ctx,
const char ***list, uint32_t *count);
-
+int ctdb_ctrl_permdisable(struct ctdb_context *ctdb,
+ struct timeval timeout,
+ uint32_t destnode,
+ uint32_t mode);
#endif
diff --git a/ctdb/include/ctdb_private.h b/ctdb/include/ctdb_private.h
index 0e5e361d70c..c22c8a6d996 100644
--- a/ctdb/include/ctdb_private.h
+++ b/ctdb/include/ctdb_private.h
@@ -111,8 +111,9 @@ struct ctdb_node {
const char *name; /* for debug messages */
void *private_data; /* private to transport */
uint32_t vnn;
-#define NODE_FLAGS_CONNECTED 0x00000001
-#define NODE_FLAGS_DISABLED 0x00000002
+#define NODE_FLAGS_CONNECTED 0x00000001
+#define NODE_FLAGS_DISABLED 0x00000002
+#define NODE_FLAGS_PERMANENTLY_DISABLED 0x00000004
uint32_t flags;
/* used by the dead node monitoring */
@@ -412,6 +413,7 @@ enum ctdb_controls {CTDB_CONTROL_PROCESS_EXISTS = 0,
CTDB_CONTROL_GET_TUNABLE = 49,
CTDB_CONTROL_LIST_TUNABLES = 50,
CTDB_CONTROL_GET_PUBLIC_IPS = 51,
+ CTDB_CONTROL_PERMANENTLY_DISABLE = 52,
};
/*