d243e33
#!/bin/sh
d243e33
#
d243e33
# Init file for tor - An Anonymizing overlay network for TCP
d243e33
#
d243e33
# chkconfig: - 99 01
d243e33
# description:   An Anonymizing overlay network for TCP
d243e33
#
d243e33
### BEGIN INIT INFO
5d00f66
# Default-Stop:		0 1 2 6
5d00f66
# Short-Description:	An Anonymizing overlay network for TCP
5d00f66
# Description:		An Anonymizing overlay network for TCP
5d00f66
# Required-Start:	$network $remote_fs $local_fs
5d00f66
# Should-Start:		$syslog $time
d243e33
### END INIT INFO
d243e33
d243e33
. /lib/lsb/init-functions
d243e33
d243e33
f=/etc/sysconfig/tor
d243e33
d243e33
TOR_OPTS=
d243e33
TOR_PIDFILE=/var/run/tor/tor.pid
d243e33
TOR_USER=toranon
d243e33
test ! -r "$f" || . "$f"
d243e33
d243e33
prog="/usr/bin/tor"
d243e33
d243e33
lockfile=/var/lock/subsys/tor
d243e33
pidfile=$TOR_PIDFILE
d243e33
d243e33
start() {
d243e33
    echo -n $"Starting $prog: "
d243e33
d243e33
    start_daemon $prog --PIDFile "$pidfile" --RunAsDaemon 1 $TOR_OPTS
d243e33
    rc=$?
d243e33
    if test $rc -eq 0 && touch $lockfile; then
d243e33
	log_success_msg
d243e33
    else
d243e33
	log_failure_msg
d243e33
    fi
5d00f66
d243e33
    return $rc
d243e33
}
d243e33
d243e33
stop() {
d243e33
    echo -n $"Stopping $prog: "
d243e33
    killproc $prog -INT && log_success_msg || log_failure_msg
d243e33
    rm -f $pidfile $lockfile
d243e33
}
d243e33
d243e33
restart() {
d243e33
    stop
d243e33
    start
d243e33
}
d243e33
d243e33
reload() {
d243e33
    echo -n $"Reloading $prog: "
d243e33
    killproc $prog -HUP && log_success_msg || log_failure_msg
d243e33
}
d243e33
d243e33
status() {
5d00f66
    pidofproc -p "$TOR_PIDFILE" "$prog" >/dev/null 2>&1
5d00f66
    rc=$?
5d00f66
    case $rc in
5d00f66
      (0) echo $"$prog is running";;
5d00f66
      (1) echo $"program is dead and /var/run pid file exists";;
5d00f66
      (2) echo $"program is dead and /var/lock lock file exists";;
5d00f66
      (3) echo $"program is not running";;
5d00f66
      (4) echo $"program or service status is unknown";;
5d00f66
      (*) echo $"status $rc of $prog";;
5d00f66
    esac
d243e33
5d00f66
    return $rc
d243e33
}
d243e33
d243e33
case $1 in
5d00f66
    (start|stop|reload|status|restart)
5d00f66
	$1
d243e33
	;;
5d00f66
    (force-reload)
d243e33
	restart
d243e33
	;;
d243e33
    (condrestart|try-restart)
d243e33
	if [ -f $lockfile ]; then
d243e33
	    restart
d243e33
	fi
d243e33
	;;
d243e33
    (*)
d243e33
	echo $"Usage: $0 {start|stop|force-reload|reload|try-restart|status}"
d243e33
	exit 3
d243e33
esac