clamav/rc.clamav

Mon, 17 Sep 2012 19:10:10 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Mon, 17 Sep 2012 19:10:10 +0200
changeset 689
9fe04d4d4e5a
parent 233
f5f6e93f3dc6
permissions
-rw-r--r--

Update to new version of vendor software although Oracle fails to deliver.
More specifically, newer db(3) patch revisions exist but Oracle has
removed them from the canonical download server URI for Berkely DB.

     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

mercurial