summaryrefslogtreecommitdiffstats
path: root/ctdb/server/ctdb_control.c
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronniesahlberg@gmail.com>2011-09-12 09:34:34 +1000
committerRonnie Sahlberg <ronniesahlberg@gmail.com>2011-09-12 09:34:34 +1000
commit0dc5584101e61eeadf908d3340c2ef2fecd4cc22 (patch)
treefbd9296e38e71309d80c9ddf9abcc58aae9d9c4e /ctdb/server/ctdb_control.c
parentd78b0ff985c7a389ab4678fef4c2cc30cd278f42 (diff)
parent01388c4414fcd976581f661cbe764fa0f984b293 (diff)
downloadsamba-0dc5584101e61eeadf908d3340c2ef2fecd4cc22.tar.gz
samba-0dc5584101e61eeadf908d3340c2ef2fecd4cc22.tar.xz
samba-0dc5584101e61eeadf908d3340c2ef2fecd4cc22.zip
Merge branch 'master-readonly-records' into foo
Conflicts: Makefile.in tools/ctdb.c (This used to be ctdb commit 0fedef0ffba4178126eee9544c5e2db52f5db893)
Diffstat (limited to 'ctdb/server/ctdb_control.c')
-rw-r--r--ctdb/server/ctdb_control.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/ctdb/server/ctdb_control.c b/ctdb/server/ctdb_control.c
index 748907f2a9..9c2f7429dd 100644
--- a/ctdb/server/ctdb_control.c
+++ b/ctdb/server/ctdb_control.c
@@ -194,6 +194,16 @@ static int32_t ctdb_control_dispatch(struct ctdb_context *ctdb,
CHECK_CONTROL_DATA_SIZE(0);
return ctdb->statistics.num_clients;
+ case CTDB_CONTROL_SET_DB_READONLY: {
+ uint32_t db_id;
+ struct ctdb_db_context *ctdb_db;
+
+ CHECK_CONTROL_DATA_SIZE(sizeof(db_id));
+ db_id = *(uint32_t *)indata.dptr;
+ ctdb_db = find_ctdb_db(ctdb, db_id);
+ if (ctdb_db == NULL) return -1;
+ return ctdb_set_db_readonly(ctdb, ctdb_db);
+ }
case CTDB_CONTROL_GET_DBNAME: {
uint32_t db_id;
struct ctdb_db_context *ctdb_db;