You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/net-proxy/ufdbguard/files/ufdb.initd.2

69 lines
1.6 KiB

#!/sbin/runscript
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-proxy/ufdbguard/files/ufdb.initd.2,v 1.2 2012/01/12 13:22:22 flameeyes Exp $
# reconfig is what the upstream documentation suggests, so let's
# provide it for compatibility.
extra_started_commands="reload reconfig"
: ${configfile:=/etc/ufdbGuard.conf}
pidfile=/var/run/ufdbguard/ufdbguardd.pid
command=/usr/libexec/ufdbguard/ufdbguardd
command_arguments="-c ${configfile} ${FUDB_OPTS}"
start_stop_daemon_args="--user ${UFDB_USER} --wait 1500"
name="ufdbGuard Daemon"
depend() {
need net
before squid
use logger
}
get_config() {
# Okay this sounds silly, but it is important because the settings
# in ufdbGuard are quoted, so this unquotes them.
eval echo $(awk '$1 == "'$1'" { print $2 }' "${configfile}")
}
gentables() {
local dbhome=$(get_config dbhome)
for gt in ${UFDB_GT} ; do
[ -f "${dbhome}/${gt}/domains" ] || continue
urls=
[ -f "${dbhome}/${gt}/urls" ] && urls="${dbhome}/${gt}/urls"
ebegin "Generating domainlist ${gt}"
ufdbGenTable ${GENTABLE_OPTIONS} -t "${gt}" -d "${dbhome}/${gt}/domains" ${urls:+-u "${urls}"}
eend $?
done
}
start_pre() {
gentables
checkpath -d -m 0755 -o ${UFDB_USER} $(get_config logdir) "$(dirname "${pidfile}")"
}
reload() {
if ! [ -f ${pidfile} ]; then
eerror "Unable to find PID file for ufdbguardd, was it just started?"
return 1
fi
gentables
ebegin "Reloading ufdbGuard"
kill -HUP "$(cat ${pidfile})"
eend $? "Failed to reload ufdbGuard"
}
reconfig() {
reload
}