diff options
Diffstat (limited to 'net-proxy/havp/files/havp.initd')
-rw-r--r-- | net-proxy/havp/files/havp.initd | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/net-proxy/havp/files/havp.initd b/net-proxy/havp/files/havp.initd new file mode 100644 index 000000000000..44b00fcd0fbe --- /dev/null +++ b/net-proxy/havp/files/havp.initd @@ -0,0 +1,59 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +depend() { + need net + use clamd \ + squid apache2 bfilter mman junkbuster oops polipo privoxy tinyproxy wwwoffled + #havp could be used in conjuction with any parent proxies enumerated above +} + +get_havp_opt() { + eval HAVP_$1=`awk '/^[ \t]*'$1'[ \t]+/ { print $2; }' < /etc/havp/havp.config` +} + +checkconfig() { + if [ ! -f /etc/havp/havp.config ] ; then + eerror "No /etc/havp/havp.config file exists!" + return 1 + fi + + local HAVP_USER + get_havp_opt USER + if [ -n "${HAVP_USER}" ] && ! getent passwd ${HAVP_USER} > /dev/null ; then + eerror "${HAVP_USER} user is missing!" + return 1 + fi + local HAVP_GROUP + get_havp_opt GROUP + if [ -n "${HAVP_GROUP}" ] && ! getent group ${HAVP_GROUP} > /dev/null ; then + eerror "${HAVP_GROUP} group is missing!" + return 1 + fi +} + + +start() { + checkconfig || return 1 + + checkpath --directory \ + --owner "${HAVP_USER:-havp}:${HAVP_GROUP:-havp}" --mode 0755 /run/havp + checkpath --directory \ + --owner "${HAVP_USER:-havp}:${HAVP_GROUP:-havp}" --mode 0700 /var/log/havp + checkpath --directory \ + --owner "${HAVP_USER:-havp}:${HAVP_GROUP:-havp}" --mode 0750 /var/tmp/havp + + ebegin "Starting HTTP AntiVirus Proxy" + start-stop-daemon --start --exec /usr/sbin/havp > /dev/null + eend $? +} + +stop() { + local HAVP_PIDFILE + get_havp_opt PIDFILE + + ebegin "Stopping HTTP AntiVirus Proxy" + start-stop-daemon --stop --pidfile=${HAVD_PIDFILE:-/var/run/havp/havp.pid} + eend $? +} |