summaryrefslogtreecommitdiffstats
path: root/xlators/mgmt/glusterd/src/glusterd-ganesha.c
diff options
context:
space:
mode:
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-ganesha.c')
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-ganesha.c45
1 files changed, 22 insertions, 23 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-ganesha.c b/xlators/mgmt/glusterd/src/glusterd-ganesha.c
index 8dde82e89ed..f7b7f1371e5 100644
--- a/xlators/mgmt/glusterd/src/glusterd-ganesha.c
+++ b/xlators/mgmt/glusterd/src/glusterd-ganesha.c
@@ -119,11 +119,10 @@ sc_service_action (struct service_command *sc, char *command)
static int
manage_service (char *action)
{
- struct stat stbuf = {0,};
int i = 0;
int ret = 0;
struct service_command sc_list[] = {
- { .binary = "/usr/bin/systemctl",
+ { .binary = "/bin/systemctl",
.service = "nfs-ganesha",
.action = sc_systemctl_action
},
@@ -140,16 +139,11 @@ manage_service (char *action)
};
while (sc_list[i].binary != NULL) {
- ret = sys_stat (sc_list[i].binary, &stbuf);
+ ret = sys_access (sc_list[i].binary, X_OK);
if (ret == 0) {
gf_msg_debug (THIS->name, 0,
- "%s found.", sc_list[i].binary);
- if (strcmp (sc_list[i].binary, "/usr/bin/systemctl") == 0)
- ret = sc_systemctl_action (&sc_list[i], action);
- else
- ret = sc_service_action (&sc_list[i], action);
-
- return ret;
+ "%s found.", sc_list[i].binary);
+ return sc_list[i].action (&sc_list[i], action);
}
i++;
}
@@ -465,9 +459,9 @@ manage_export_config (char *volname, char *value, char **op_errstr)
GF_ASSERT(volname);
runinit (&runner);
- runner_add_args (&runner, "sh",
- GANESHA_PREFIX"/create-export-ganesha.sh",
- CONFDIR, value, volname, NULL);
+ runner_add_args (&runner,
+ GANESHA_PREFIX"/create-export-ganesha.sh",
+ CONFDIR, value, volname, NULL);
ret = runner_run(&runner);
if (ret)
@@ -570,8 +564,9 @@ ganesha_manage_export (dict_t *dict, char *value, char **op_errstr)
}
if (check_host_list()) {
- runner_add_args (&runner, "sh", GANESHA_PREFIX"/dbus-send.sh",
- CONFDIR, value, volname, NULL);
+ runner_add_args (&runner,
+ GANESHA_PREFIX"/dbus-send.sh",
+ CONFDIR, value, volname, NULL);
ret = runner_run (&runner);
if (ret) {
gf_asprintf(op_errstr, "Dynamic export"
@@ -610,9 +605,9 @@ tear_down_cluster(gf_boolean_t run_teardown)
if (run_teardown) {
runinit (&runner);
- runner_add_args (&runner, "sh",
- GANESHA_PREFIX"/ganesha-ha.sh", "teardown",
- CONFDIR, NULL);
+ runner_add_args (&runner,
+ GANESHA_PREFIX"/ganesha-ha.sh", "teardown",
+ CONFDIR, NULL);
ret = runner_run(&runner);
/* *
* Remove all the entries in CONFDIR expect ganesha.conf and
@@ -675,7 +670,8 @@ setup_cluster(gf_boolean_t run_setup)
if (run_setup) {
runinit (&runner);
- runner_add_args (&runner, "sh", GANESHA_PREFIX"/ganesha-ha.sh",
+ runner_add_args (&runner,
+ GANESHA_PREFIX"/ganesha-ha.sh",
"setup", CONFDIR, NULL);
ret = runner_run (&runner);
}
@@ -702,8 +698,9 @@ teardown (gf_boolean_t run_teardown, char **op_errstr)
}
runinit (&runner);
- runner_add_args (&runner, "sh", GANESHA_PREFIX"/ganesha-ha.sh",
- "cleanup", CONFDIR, NULL);
+ runner_add_args (&runner,
+ GANESHA_PREFIX"/ganesha-ha.sh",
+ "cleanup", CONFDIR, NULL);
ret = runner_run (&runner);
if (ret)
gf_msg_debug (THIS->name, 0, "Could not clean up"
@@ -747,7 +744,8 @@ stop_ganesha (char **op_errstr) {
runner_t runner = {0,};
runinit (&runner);
- runner_add_args (&runner, "sh", GANESHA_PREFIX"/ganesha-ha.sh",
+ runner_add_args (&runner,
+ GANESHA_PREFIX"/ganesha-ha.sh",
"--setup-ganesha-conf-files", CONFDIR, "no", NULL);
ret = runner_run (&runner);
if (ret) {
@@ -809,7 +807,8 @@ start_ganesha (char **op_errstr)
}
runinit (&runner);
- runner_add_args (&runner, "sh", GANESHA_PREFIX"/ganesha-ha.sh",
+ runner_add_args (&runner,
+ GANESHA_PREFIX"/ganesha-ha.sh",
"--setup-ganesha-conf-files", CONFDIR, "yes", NULL);
ret = runner_run (&runner);
if (ret) {