1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- #!/sbin/openrc-run
- # Copyright 1999-2011 Gentoo Foundation
- # Distributed under the terms of the GNU General Public License v2
- # reconfig is what the upstream documentation suggests, so let's
- # provide it for compatibility.
- extra_started_commands="reload reconfig"
- depend() {
- need net
- before squid
- use logger
- }
- get_config() {
- awk '$1 == "'$1'" { print $2 }' "/etc/ufdbGuard.conf"
- }
- 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() {
- gentables
- local logdir=$(get_config logdir)
- if [ ! -d "${logdir}" ] ; then
- mkdir -p ${logdir}
- chown -R ${UFDB_USER} ${logdir}
- fi
- if [ ! -d /var/run/ufdbguardd ] ; then
- mkdir -p /var/run/ufdbguard
- chown -R ${UFDB_USER} /var/run/ufdbguard
- fi
- ebegin "Starting ufdbGuard"
- start-stop-daemon --start \
- --user ${UFDB_USER} \
- --wait 1500 \
- --exec /usr/libexec/ufdbguard/ufdbguardd \
- --pidfile /var/run/ufdbguard/ufdbguardd.pid -- \
- -c /etc/ufdbGuard.conf ${UFDB_OPTS}
- eend $? "Failed to start ufdbGuard"
- }
- stop() {
- ebegin "Stopping ufdbGuard"
- start-stop-daemon --stop \
- --exec /usr/libexec/ufdbguard/ufdbguardd \
- --pidfile /var/run/ufdbguard/ufdbguardd.pid
- eend $? "Failed to stop ufdbGuard"
- }
- reload() {
- if ! [ -f /var/run/ufdbguard/ufdbguardd.pid ]; then
- eerror "Unable to find PID file for ufdbguardd, was it just started?"
- return 1
- fi
- gentables
- ebegin "Reloading ufdbGuard"
- kill -HUP "$(cat /var/run/ufdbguard/ufdbguardd.pid)"
- eend $? "Failed to reload ufdbGuard"
- }
- reconfig() {
- reload
- }
|