#!/bin/sh # # tor Anonymizing overlay network for TCP # # chkconfig: 345 40 60 # description: Tor is a connection-based low-latency anonymous communication system. # processname: tor # pidfile: /var/run/tor.pid # # $Id$ . /etc/rc.d/init.d/functions . /etc/sysconfig/network TOR_USER="tor" TOR_GROUP="tor" TOR_CONFIG="/etc/tor/torrc" [ -f /etc/sysconfig/tor ] && . /etc/sysconfig/tor if is_yes "${NETWORKING}"; then if [ ! -f /var/lock/subsys/network ]; then msg_network_down tor exit 1 fi else exit 0 fi start() { if [ ! -f /var/lock/subsys/tor ]; then msg_starting tor daemon tor --user $TOR_USER --group $TOR_GROUP \ --pidfile /var/run/tor.pid -f $TOR_CONFIG $TOR_OPTIONS RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/tor else msg_already_running tor fi } stop() { if [ -f /var/lock/subsys/tor ]; then msg_stopping tor killproc --pidfile /var/run/tor.pid tor rm -f /var/lock/subsys/tor else msg_not_running tor fi } RETVAL=0 case "$1" in start) start ;; stop) stop ;; restart) stop start ;; reload|force-reload) if [ -f /var/lock/subsys/tor ]; then msg_reloading tor killproc tor -HUP RETVAL=$? else msg_not_running tor RETVAL=7 fi ;; status) status tor RETVAL=$? ;; *) msg_usage "$0 {start|stop|restart|reload|force-reload|status}" exit 3 esac exit $RETVAL