summaryrefslogtreecommitdiffstats
path: root/ctdb/common/ctdb_util.c
diff options
context:
space:
mode:
Diffstat (limited to 'ctdb/common/ctdb_util.c')
-rw-r--r--ctdb/common/ctdb_util.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/ctdb/common/ctdb_util.c b/ctdb/common/ctdb_util.c
index d4f85416c0c..7a70fea9cd7 100644
--- a/ctdb/common/ctdb_util.c
+++ b/ctdb/common/ctdb_util.c
@@ -811,3 +811,17 @@ void ctdb_set_runstate(struct ctdb_context *ctdb, enum ctdb_runstate runstate)
runstate_to_string(runstate), runstate));
ctdb->runstate = runstate;
}
+
+void ctdb_mkdir_p_or_die(struct ctdb_context *ctdb, const char *dir, int mode)
+{
+ int ret;
+
+ ret = mkdir_p(dir, mode);
+ if (ret != 0) {
+ DEBUG(DEBUG_ALERT,
+ ("ctdb exiting with error: "
+ "failed to create directory \"%s\" (%s)\n",
+ dir, strerror(ret)));
+ exit(1);
+ }
+}