const char* helperdir;
char lockdir[PATH_MAX];
char piddir[PATH_MAX];
- char rundir[PATH_MAX];
char socketdir[PATH_MAX];
char vardir[PATH_MAX];
bool test_mode;
bool helperdir_set;
bool lockdir_set;
bool piddir_set;
- bool rundir_set;
bool socketdir_set;
bool vardir_set;
} ctdb_paths = {
.helperdir = CTDB_HELPER_BINDIR,
.lockdir = CTDB_LOCKDIR,
.piddir = CTDB_PIDDIR,
- .rundir = CTDB_RUNDIR,
.socketdir = CTDB_SOCKETDIR,
.vardir = CTDB_VARDIR,
};
return ctdb_paths.piddir;
}
-const char *path_rundir(void)
-{
- bool ok;
-
- if (! ctdb_paths.rundir_set) {
- ok = path_construct(ctdb_paths.rundir, "run");
- if (!ok) {
- D_ERR("Failed to construct RUNDIR\n");
- } else {
- ctdb_paths.rundir_set = true;
- }
- }
-
- return ctdb_paths.rundir;
-}
-
const char *path_socketdir(void)
{
bool ok;
return talloc_asprintf(mem_ctx, "%s/%s", path_piddir(), path);
}
-char *path_rundir_append(TALLOC_CTX *mem_ctx, const char *path)
-{
- return talloc_asprintf(mem_ctx, "%s/%s", path_rundir(), path);
-}
-
char *path_socketdir_append(TALLOC_CTX *mem_ctx, const char *path)
{
return talloc_asprintf(mem_ctx, "%s/%s", path_socketdir(), path);
const char *path_helperdir(void);
const char *path_lockdir(void);
const char *path_piddir(void);
-const char *path_rundir(void);
const char *path_socketdir(void);
const char *path_vardir(void);
char *path_helperdir_append(TALLOC_CTX *mem_ctx, const char *path);
char *path_lockdir_append(TALLOC_CTX *mem_ctx, const char *path);
char *path_piddir_append(TALLOC_CTX *mem_ctx, const char *path);
-char *path_rundir_append(TALLOC_CTX *mem_ctx, const char *path);
char *path_socketdir_append(TALLOC_CTX *mem_ctx, const char *path);
char *path_vardir_append(TALLOC_CTX *mem_ctx, const char *path);
return ret;
}
-static int path_tool_rundir(TALLOC_CTX *mem_ctx,
- int argc,
- const char **argv,
- void *private_data)
-{
- int ret = path_tool_generic(mem_ctx,
- argc,
- argv,
- private_data,
- "rundir",
- path_rundir);
- return ret;
-}
-
-static int path_tool_rundir_append(TALLOC_CTX *mem_ctx,
- int argc,
- const char **argv,
- void *private_data)
-{
- int ret = path_tool_append_generic(mem_ctx,
- argc,
- argv,
- private_data,
- "rundir append",
- path_rundir_append);
- return ret;
-}
-
static int path_tool_socketdir(TALLOC_CTX *mem_ctx,
int argc,
const char **argv,
.msg_help = "Get path of CTDB PIDDIR",
.msg_args = NULL,
},
- {
- .name = "rundir append",
- .fn = path_tool_rundir_append,
- .msg_help = "Get path relative to CTDB RUNDIR",
- .msg_args = "<path>",
- },
- {
- .name = "rundir",
- .fn = path_tool_rundir,
- .msg_help = "Get path of CTDB RUNDIR",
- .msg_args = NULL,
- },
{
.name = "socketdir append",
.fn = path_tool_socketdir_append,
EOF
unit_test ctdb-path piddir
-ok <<EOF
-$CTDB_BASE/run
-EOF
-unit_test ctdb-path rundir
-
ok <<EOF
$CTDB_BASE/run
EOF
EOF
unit_test ctdb-path piddir append foobar
-ok <<EOF
-$CTDB_BASE/run/foobar
-EOF
-unit_test ctdb-path rundir append foobar
-
ok <<EOF
$CTDB_BASE/run/foobar
EOF