aboutsummaryrefslogtreecommitdiff
path: root/net-mgmt/netdisco/files/netdisco.in
diff options
context:
space:
mode:
Diffstat (limited to 'net-mgmt/netdisco/files/netdisco.in')
-rw-r--r--net-mgmt/netdisco/files/netdisco.in20
1 files changed, 9 insertions, 11 deletions
diff --git a/net-mgmt/netdisco/files/netdisco.in b/net-mgmt/netdisco/files/netdisco.in
index 44d193e86178..84da57b2b6dd 100644
--- a/net-mgmt/netdisco/files/netdisco.in
+++ b/net-mgmt/netdisco/files/netdisco.in
@@ -18,36 +18,34 @@ load_rc_config $name
: ${netdisco_group="%%NETDISCO_GROUP%%"}
start_precmd=${name}_prestart
-start_cmd=${name}_start
stop_cmd=${name}_stop
restart_cmd=${name}_restart
status_cmd=${name}_status
command="%%PREFIX%%/bin/netdisco"
command_interpreter="/usr/bin/perl"
-pidfile=%%NETDISCO_RUNDIR%%/netdisco_daemon.pid
+netdisco_config="%%ETCDIR%%/netdisco.conf"
+pidfile=$(grep ^daemon_pid $netdisco_config | sed -E 's/.*=\s+//')
+flags="-p start"
-required_files="%%ETCDIR%%/netdisco.conf"
+required_files="$netdisco_config"
netdisco_prestart() {
- test -d %%NETDISCO_RUNDIR%% || install -d -m 0700 -o $netdisco_user -g $netdisco_group %%NETDISCO_RUNDIR%%
+ test -d ${pidfile%/*} || install -d -m 0700 -o $netdisco_user -g $netdisco_group ${pidfile%/*}
+ touch $pidfile && chown $netdisco_user $pidfile
test -d %%NETDISCO_DBDIR%% || install -d -m 0700 -o $netdisco_user -g $netdisco_group %%NETDISCO_DBDIR%%
}
-netdisco_start() {
- $command -p start
-}
-
netdisco_stop() {
- $command -p stop
+ su -m "$netdisco_user" -c "$command -p stop"
}
netdisco_restart() {
- $command -p restart
+ su -m "$netdisco_user" -c "$command -p restart"
}
netdisco_status() {
- $command -p status
+ su -m "$netdisco_user" -c "$command -p status"
}
run_rc_command "$1"