aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilliam Hubbs <w.d.hubbs@gmail.com>2016-05-19 17:58:14 -0500
committerWilliam Hubbs <w.d.hubbs@gmail.com>2016-05-19 17:58:14 -0500
commita8214af2fe3aa91930e3270af99cf1d9b7ef5b0a (patch)
tree1c9c86395c1606ca0d5be88b7f876c856672847d
parent9a372812c78ea8efc55b3dea6a39c2d0559bca45 (diff)
start-stop-daemon.sh: fix regression in chroot support
The support for the chroot variable was broken in 0.16, this fixes that breakage.
-rw-r--r--sh/start-stop-daemon.sh6
1 files changed, 5 insertions, 1 deletions
diff --git a/sh/start-stop-daemon.sh b/sh/start-stop-daemon.sh
index 3e42137c..65ee6603 100644
--- a/sh/start-stop-daemon.sh
+++ b/sh/start-stop-daemon.sh
@@ -40,6 +40,7 @@ ssd_start()
fi
eval start-stop-daemon --start \
--exec $command \
+ ${chroot:+--chroot} $chroot \
${procname:+--name} $procname \
${pidfile:+--pidfile} $pidfile \
${command_user+--user} $command_user \
@@ -47,6 +48,7 @@ ssd_start()
-- $command_args $command_args_background
if eend $? "Failed to start $RC_SVCNAME"; then
service_set_value "command" "${command}"
+ [ -n "${chroot}" ] && service_set_value "chroot" "${chroot}"
[ -n "${pidfile}" ] && service_set_value "pidfile" "${pidfile}"
[ -n "${procname}" ] && service_set_value "procname" "${procname}"
return 0
@@ -62,9 +64,11 @@ ssd_start()
ssd_stop()
{
local startcommand="$(service_get_value "command")"
+ local startchroot="$(service_get_value "chroot")"
local startpidfile="$(service_get_value "pidfile")"
local startprocname="$(service_get_value "procname")"
command="${startcommand:-$command}"
+ chroot="${startchroot:-$chroot}"
pidfile="${startpidfile:-$pidfile}"
procname="${startprocname:-$procname}"
[ -n "$command" -o -n "$procname" -o -n "$pidfile" ] || return 0
@@ -73,7 +77,7 @@ ssd_stop()
${retry:+--retry} $retry \
${command:+--exec} $command \
${procname:+--name} $procname \
- ${pidfile:+--pidfile} $pidfile \
+ ${pidfile:+--pidfile} $chroot$pidfile \
${stopsig:+--signal} $stopsig
eend $? "Failed to stop $RC_SVCNAME"