Fri, 15 Oct 2010 18:46:25 +0200
Update copyright, file server URL, modify doc and link logic.
Now documentation is installed by default to the correct path,
and QtCreator links against Qt shared libraries instead of Qt
static libraries. This unfortunate change supports Nokia's
unfortunate decision to poorly support static linking in Qt.
1 #!@l_prefix@/bin/openpkg rc
2 ##
3 ## rc.clamav -- Run-Commands
4 ##
6 %config
7 clamav_enable="$openpkg_rc_def"
8 clamav_daemons="clamd clamav-milter"
9 clamav_clamd_flags=""
10 clamav_clamav_milter_flags=""
11 clamav_update="daily"
12 clamav_log_prolog="true"
13 clamav_log_epilog="true"
14 clamav_log_numfiles="10"
15 clamav_log_minsize="1M"
16 clamav_log_complevel="9"
18 %common
19 clamav_cfgfile="@l_prefix@/etc/clamav/clamd.conf"
20 clamav_milter_cfgfile="@l_prefix@/etc/clamav/clamav-milter.conf"
21 clamav_pidfile_clamd="@l_prefix@/var/clamav/clamd.pid"
22 clamav_pidfile_clamav_milter="@l_prefix@/var/clamav/clamav-milter.pid"
23 clamav_signal () {
24 [ -f $clamav_pidfile_clamd ] \
25 && kill -$1 `cat $clamav_pidfile_clamd`
26 local rc_clamav_clamd=$?
27 [ -f $clamav_pidfile_clamav_milter ] \
28 && kill -$1 `cat $clamav_pidfile_clamav_milter`
29 local rc_clamav_clamav_milter=$?
30 [ $rc_clamav_clamd -eq 0 \
31 -o $rc_clamav_clamav_milter -eq 0 ]
32 }
34 %status -u @l_rusr@ -o
35 clamav_usable="unknown"
36 clamav_active="no"
37 rcService clamav enable yes && \
38 clamav_signal 0 && clamav_active="yes"
39 echo "clamav_enable=\"$clamav_enable\""
40 echo "clamav_usable=\"$clamav_usable\""
41 echo "clamav_active=\"$clamav_active\""
43 %start -u @l_rusr@
44 rcService clamav enable yes || exit 0
45 rcService clamav active yes && exit 0
46 for daemon in $clamav_daemons; do
47 if [ ".$daemon" = ".clamd" ]; then
48 @l_prefix@/sbin/clamd \
49 --config-file=$clamav_cfgfile \
50 $clamav_clamd_flags
51 elif [ ".$daemon" = ".clamav-milter" -a -x @l_prefix@/sbin/clamav-milter ]; then
52 ( umask 002
53 @l_prefix@/sbin/clamav-milter \
54 --config-file=$clamav_milter_cfgfile \
55 $clamav_clamav_milter_flags
56 ) || exit $?
57 fi
58 done
60 %stop -u @l_rusr@
61 rcService clamav enable yes || exit 0
62 rcService clamav active no && exit 0
63 clamav_signal TERM
64 rm -f $clamav_pidfile_clamd 2>/dev/null || true
65 rm -f $clamav_pidfile_clamav_milter 2>/dev/null || true
67 %restart -u @l_rusr@
68 rcService clamav enable yes || exit 0
69 rcService clamav active no && exit 0
70 rc clamav stop
71 sleep 2
72 rc clamav start
74 %quarterly -u @l_rusr@
75 rcService clamav enable yes || exit 0
76 if [ ".$clamav_update" = .quarterly ]; then
77 @l_prefix@/bin/freshclam
78 if [ $? -ge 10 ]; then exit $?; fi
79 fi
81 %hourly -u @l_rusr@
82 rcService clamav enable yes || exit 0
83 if [ ".$clamav_update" = .hourly ]; then
84 @l_prefix@/bin/freshclam
85 if [ $? -ge 10 ]; then exit $?; fi
86 fi
88 %daily -u @l_rusr@
89 rcService clamav enable yes || exit 0
90 if [ ".$clamav_update" = .daily ]; then
91 @l_prefix@/bin/freshclam
92 if [ $? -ge 10 ]; then exit $?; fi
93 fi
94 logfiles=""
95 for daemon in freshclam $clamav_daemons; do
96 logfiles="$logfiles @l_prefix@/var/clamav/$daemon.log"
97 done
98 shtool rotate -f \
99 -n $clamav_log_numfiles -s $clamav_log_minsize -d \
100 -z $clamav_log_complevel -o @l_rusr@ -g @l_rgrp@ -m 644 \
101 -P "$clamav_log_prolog" \
102 -E "$clamav_log_epilog; rc clamav restart" \
103 $logfiles
105 %weekly -u @l_rusr@
106 rcService clamav enable yes || exit 0
107 if [ ".$clamav_update" = .weekly ]; then
108 @l_prefix@/bin/freshclam
109 if [ $? -ge 10 ]; then exit $?; fi
110 fi