blob: 35bb8cd3d52f219a2022020088e8c62ceb1c1244 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
#!/sbin/runscript
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
# 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 localmount
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
}
|