set -e
start() {
- if status; then
+ if [ -e $PIDFILE ] && kill -0 $(cat $PIDFILE); then
echo "$NAME is already running";
exit 1;
fi;
fi;
start-stop-daemon --start -p $PIDFILE $CHUID --exec $DAEMON -- -P $PIDFILE -f -p $SOCKET $OPTIONS
sleep 1
- if [ -n "$SOCKETMODE" ]; then
- chmod $SOCKETMODE $SOCKET;
- fi;
- if [ -n "$SOCKETOWNER" ]; then
- chown $SOCKETOWNER $SOCKET;
+ if [ $(dirname $SOCKET) != "." ]; then
+ if [ -n "$SOCKETMODE" ]; then
+ chmod $SOCKETMODE $SOCKET;
+ fi;
+ if [ -n "$SOCKETOWNER" ]; then
+ chown $SOCKETOWNER $SOCKET;
+ fi;
fi;
}
stop(){
start-stop-daemon --oknodo --stop -p $PIDFILE --signal 3 --exec $DAEMON
/bin/sleep 5
- /bin/rm -f $SOCKET
+ if [ $(dirname $SOCKET) != "." ]; then
+ /bin/rm -f $SOCKET
+ fi;
/bin/rm -f $PIDFILE
}
status(){
if [ -e $PIDFILE ]; then
- if kill -0 $(cat $PIDFILE); then
- echo "${NAME} running";
- exit 0;
- else
- echo "${NAME} dead but $PIDFILE exists";
- exit 1;
+ if kill -0 $(cat $PIDFILE); then
+ echo "${NAME} running";
+ exit 0;
+ else
+ echo "${NAME} dead but $PIDFILE exists";
+ exit 1;
+ fi;
fi;
- echo "${NAME} not running";
+ echo "${NAME} not running";
exit 3;
- fi;
}
case "$1" in