شما نمی توانید بیش از 25 موضوع انتخاب کنید
موضوع میبایستی با حروف یا شماره ها شروع شود. و میتواند شامل دَش ('-') باشد و طول آن تا 35 کارکتر نیز امکانپذیر است.
59 خطوط
2.0 KiB
59 خطوط
2.0 KiB
#!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc |
|
## |
|
## rc.uvscan -- Run-Commands |
|
## |
|
|
|
%config |
|
uvscan_enable="$openpkg_rc_def" |
|
uvscan_dat_url="ftp://ftp.nai.com/pub/antivirus/datfiles/4.x/" |
|
uvscan_dat_update="daily" |
|
|
|
%common |
|
rcService uvscan enable yes || exit 0 |
|
uvscan_update () { |
|
# determine information |
|
uvscan_datadir="@l_prefix@/var/uvscan/data" |
|
uvscan_datfile=`@l_prefix@/bin/curl -s "$uvscan_dat_url" 2>/dev/null |\ |
|
grep 'dat-[0-9][0-9]*\.tar' | sort | tail -1 |\ |
|
sed -e 's;^.*\(dat-[0-9][0-9]*\.tar\).*$;\1;'` |
|
uvscan_tmpdir=`echo "${uvscan_datfile}" | sed -e 's;\.tar$;;'` |
|
|
|
# download and unpack latest DATs |
|
umask 077 |
|
cd ${uvscan_datadir} || exit 1 |
|
rm -f ${uvscan_datfile} >/dev/null 2>&1 || true |
|
@l_prefix@/bin/curl -s -o ${uvscan_datfile} \ |
|
${uvscan_dat_url}/${uvscan_datfile} || exit 1 |
|
rm -rf ${uvscan_tmpdir} >/dev/null 2>&1 || true |
|
mkdir ${uvscan_tmpdir} |
|
( cd ${uvscan_tmpdir} && @l_prefix@/bin/tar -xf ../${uvscan_datfile} ) || exit 1 |
|
|
|
# update DAT repository by installing updated DAT files |
|
@l_prefix@/lib/openpkg/shtool install -m 644 -o @l_musr@ -g @l_mgrp@ \ |
|
${uvscan_tmpdir}/*.dat . |
|
uvscan_version=`echo "${uvscan_datfile}" | sed -e 's;^dat-;;' -e 's;\.tar$;;'` |
|
echo "${uvscan_version}" >VERSION |
|
|
|
# cleanup |
|
rm -f ${uvscan_datfile} >/dev/null 2>&1 || true |
|
rm -rf ${uvscan_tmpdir} >/dev/null 2>&1 || true |
|
} |
|
|
|
%hourly -u @l_musr@ |
|
rcService uvscan enable yes || exit 0 |
|
if [ ".$uvscan_dat_update" = .hourly ]; then |
|
uvscan_update || exit $? |
|
fi |
|
|
|
%daily -u @l_musr@ |
|
rcService uvscan enable yes || exit 0 |
|
if [ ".$uvscan_dat_update" = .daily ]; then |
|
uvscan_update || exit $? |
|
fi |
|
|
|
%weekly -u @l_musr@ |
|
rcService uvscan enable yes || exit 0 |
|
if [ ".$uvscan_dat_update" = .weekly ]; then |
|
uvscan_update || exit $? |
|
fi |
|
|
|
|