summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--security/antivir-milter/Makefile37
-rw-r--r--security/antivir-milter/distinfo4
-rw-r--r--security/antivir-milter/files/patch-doc::MANUAL4
-rw-r--r--security/antivir-milter/files/patch-etc::avmilter.conf2
-rw-r--r--security/antivir-milter/files/patch-init::rc.avmilter3
-rw-r--r--security/antivir-milter/files/patch-script::avq18
-rw-r--r--security/antivir-milter/files/patch-script::avupdater106
-rw-r--r--security/antivir-milter/pkg-message6
-rw-r--r--security/antivir-milter/pkg-plist3
9 files changed, 155 insertions, 28 deletions
diff --git a/security/antivir-milter/Makefile b/security/antivir-milter/Makefile
index 08e8d6e..5193b32 100644
--- a/security/antivir-milter/Makefile
+++ b/security/antivir-milter/Makefile
@@ -5,12 +5,12 @@
# $FreeBSD$
PORTNAME= antivir-milter
-PORTVERSION= 1.1
+PORTVERSION= 1.1.0p3
CATEGORIES= security mail
-MASTER_SITES= ftp://ftp.antivir.de/freebsd/ \
+MASTER_SITES= ftp://ftp.antivir.de/unix/milter/ \
http://dl.antivir.de/dateien/antivir/release/
-DISTNAME= avfbmlt
-EXTRACT_SUFX= .tgz
+DISTVERSION= ${PORTVERSION:C/p.+$//}
+DISTVERSIONPREFIX= prof-
MAINTAINER= marius@FreeBSD.org
COMMENT= AntiVir Milter mail virusscanner for Sendmail
@@ -26,22 +26,36 @@ USE_REINPLACE= yes
FETCH_CMD= /usr/bin/fetch -A
# When the avmilter binary is stripped its self-check fails.
STRIP=
-WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
PKGMESSAGE= ${WRKDIR}/pkg-message
.include <bsd.port.pre.mk>
+.if ${OSVERSION} < 400000
+IGNORE= requires FreeBSD 4.0 or higher
+.endif
+
.if (!exists(/usr/lib/libmilter.a)) && (!exists(${LOCALBASE}/lib/libmilter.a))
IGNORE= requires Sendmail 8.12
.endif
+.if ${OSVERSION} >= 503001 && ${OSVERSION} <= 600004
+BINSRC= ${WRKSRC}/bin/freebsd5
+.else
+BINSRC= ${WRKSRC}/bin/freebsd
.if ${OSVERSION} >= 500000
LIB_DEPENDS= c.4:${PORTSDIR}/misc/compat4x
.endif
+.endif
+
+post-extract:
+ @${MV} ${WRKSRC}/templates/en/patho-admnistrator\
+ ${WRKSRC}/templates/en/patho-administrator
+ @${MV} ${WRKSRC}/templates/en/virus-admnistrator\
+ ${WRKSRC}/templates/en/virus-administrator
post-patch:
.for i in doc/MANUAL etc/antivir.conf etc/avmilter.conf init/rc.avmilter \
- pgp/README script/avq
+ pgp/README script/avq script/avupdater
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g; \
s|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/${i}
.endfor
@@ -54,10 +68,10 @@ post-patch:
do-install:
@${INSTALL} -d -o ${BINOWN} -g ${BINGRP} -m 755 ${PREFIX}/AntiVir
- @${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 755 ${WRKSRC}/bin/antivir \
+ @${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 755 ${BINSRC}/antivir \
${PREFIX}/AntiVir/antivir-dist_avmilter
.if !exists(${PREFIX}/AntiVir/antivir)
- @${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 755 ${WRKSRC}/bin/antivir \
+ @${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 755 ${BINSRC}/antivir \
${PREFIX}/AntiVir
.endif
@${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 ${WRKSRC}/vdf/antivir.vdf \
@@ -79,12 +93,14 @@ do-install:
.if !exists(${PREFIX}/etc/antivir.conf)
@${INSTALL_DATA} ${WRKSRC}/etc/antivir.conf ${PREFIX}/etc
.endif
- @${INSTALL_PROGRAM} ${WRKSRC}/bin/avmilter ${PREFIX}/sbin
+ @${INSTALL_PROGRAM} ${BINSRC}/avmilter ${PREFIX}/sbin
@${INSTALL_SCRIPT} ${WRKDIR}/antivirupdater.sh \
${PREFIX}/sbin/antivirupdater
@${INSTALL_SCRIPT} ${WRKDIR}/avqrm.sh ${PREFIX}/bin/avqrm
@${INSTALL_SCRIPT} ${WRKSRC}/init/rc.avmilter \
${PREFIX}/etc/rc.d/avmilter.sh
+ @${INSTALL_SCRIPT} ${WRKSRC}/script/avupdater \
+ ${PREFIX}/etc/rc.d/avupdater.sh-dist_avmilter
@${INSTALL} -d -o smmsp -g smmsp -m 700 /var/spool/avmilter
.for i in incoming outgoing rejected
@${INSTALL} -d -o smmsp -g smmsp -m 700 /var/spool/avmilter/${i}
@@ -103,8 +119,7 @@ do-install:
.for i in ChangeLog LICENSE LICENSE.DE
@${INSTALL_DATA} ${WRKSRC}/${i} ${DOCSDIR}
.endfor
- @${INSTALL_DATA} ${WRKSRC}/doc/MANUAL ${DOCSDIR}
-.for i in avmilter_de.pdf avmilter_en.pdf
+.for i in MANUAL avmilter_de.pdf
@${INSTALL_DATA} ${WRKSRC}/doc/${i} ${DOCSDIR}
.endfor
@${INSTALL_DATA} ${WRKSRC}/pgp/README ${DOCSDIR}/README.gpg
diff --git a/security/antivir-milter/distinfo b/security/antivir-milter/distinfo
index 6148b7b..5530753 100644
--- a/security/antivir-milter/distinfo
+++ b/security/antivir-milter/distinfo
@@ -1,2 +1,2 @@
-MD5 (avfbmlt.tgz) = 86af07e84e3522a11c66dcb49cbc3306
-SIZE (avfbmlt.tgz) = 2869629
+MD5 (antivir-milter-prof-1.1.0.tar.gz) = c3bca40c0d8ddfccfafba6de84cb09ff
+SIZE (antivir-milter-prof-1.1.0.tar.gz) = 6366384
diff --git a/security/antivir-milter/files/patch-doc::MANUAL b/security/antivir-milter/files/patch-doc::MANUAL
index 0ea99b9..86cc5aa 100644
--- a/security/antivir-milter/files/patch-doc::MANUAL
+++ b/security/antivir-milter/files/patch-doc::MANUAL
@@ -22,7 +22,7 @@
+set the access rights of user root and group to smmsp:
- # cp hbedv.key /usr/lib/AntiVir/
-- # chown uucp:uucp /usr/lib/AntiVir/avmgate.key
+- # chown uucp:antivir /usr/lib/AntiVir/avmgate.key
+ # cp hbedv.key %%PREFIX%%/AntiVir/
+ # chown root:smmsp %%PREFIX%%/AntiVir/hbedv.key
+ # chmod 440 %%PREFIX%%/AntiVir/hbedv.key
@@ -37,7 +37,7 @@
+%%PREFIX%%/etc/avmilter/avmilter.conf:
-# User uucp
--# Group uucp
+-# Group antivir
+# User smmsp
+# Group smmsp
# Postmaster postmaster
diff --git a/security/antivir-milter/files/patch-etc::avmilter.conf b/security/antivir-milter/files/patch-etc::avmilter.conf
index 7b22e19..aab271c 100644
--- a/security/antivir-milter/files/patch-etc::avmilter.conf
+++ b/security/antivir-milter/files/patch-etc::avmilter.conf
@@ -5,7 +5,7 @@
# AntiVir Milter will run as the specified user and group.
-# User uucp
--# Group uucp
+-# Group antivir
+User smmsp
+Group smmsp
diff --git a/security/antivir-milter/files/patch-init::rc.avmilter b/security/antivir-milter/files/patch-init::rc.avmilter
index 9498783..487c3d6 100644
--- a/security/antivir-milter/files/patch-init::rc.avmilter
+++ b/security/antivir-milter/files/patch-init::rc.avmilter
@@ -18,8 +18,9 @@
;;
stop)
- echo -n "Shutting down AntiVir Milter."
- killall -TERM avmilter
+- killall -TERM /usr/sbin/avmilter > /dev/null 2>&1
- echo
++ killall -TERM avmilter > /dev/null 2>&1
+ echo -n " avmilter"
;;
restart)
diff --git a/security/antivir-milter/files/patch-script::avq b/security/antivir-milter/files/patch-script::avq
index dcde2cf..cc77b10 100644
--- a/security/antivir-milter/files/patch-script::avq
+++ b/security/antivir-milter/files/patch-script::avq
@@ -1,15 +1,15 @@
--- script/avq.orig Sat Oct 11 13:26:02 2003
+++ script/avq Sat Oct 11 13:31:54 2003
-@@ -38,7 +38,7 @@
+@@ -39,7 +39,7 @@
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#******************************************************************************
-configuration=/etc/avmilter.conf
+configuration=%%PREFIX%%/etc/avmilter/avmilter.conf
- queue="`egrep -i '^[Ss][Pp][Oo][Oo][Ll][Dd][Ii][Rr]' ${configuration} | awk '{print $2;}'`"
- queue_set=0
- pname="`basename $0`"
-@@ -49,6 +49,15 @@
+
+ for arg ;
+ do
+@@ -68,6 +68,15 @@
systeme="`uname`"
date_param="-d"
@@ -24,8 +24,8 @@
+
usage() {
echo "${pname} usage:"
- echo " ${pname} [--queue=DIR] "
-@@ -124,7 +133,7 @@
+ echo " ${pname} [--conf=.conf] "
+@@ -149,7 +158,7 @@
data=`/bin/ls "${queue}"/*/[Dd]f-"${id}"`
echo "ctor: ${ctrl} ${data}"
if [ ! -f "${data}" ] ; then
@@ -34,7 +34,7 @@
"in queue '$queue'."
exit 3
fi
-@@ -136,9 +145,13 @@
+@@ -161,9 +170,13 @@
bnam="`basename ${ctrl}`"
case $newstate in
R)
@@ -51,7 +51,7 @@
;;
*)
Qtrl="`echo $bnam|sed -e 's/^.\(.*\)$/'${newstate}'\1/'`"
-@@ -179,7 +192,7 @@
+@@ -204,7 +217,7 @@
group=`egrep -i '^group' "$configuration"|awk '{print $2;}'`
if [ -f "${data}" ] ; then
if /bin/ls "${queue}"/*/??-"${id}" > /dev/null 2>&1 ; then
diff --git a/security/antivir-milter/files/patch-script::avupdater b/security/antivir-milter/files/patch-script::avupdater
new file mode 100644
index 0000000..2aab655
--- /dev/null
+++ b/security/antivir-milter/files/patch-script::avupdater
@@ -0,0 +1,106 @@
+--- script/avupdater.orig Thu Nov 25 10:29:31 2004
++++ script/avupdater Wed Dec 8 15:23:09 2004
+@@ -5,10 +5,8 @@
+ # Copyright (c) 2002-2004 H+BEDV Datentechnik GmbH
+ #
+
+-PATH="/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin"
+-
+ DAEMONNAME="antivir"
+-AVDIR="/usr/lib/AntiVir"
++AVDIR="%%PREFIX%%/AntiVir"
+
+ DAEMON="$AVDIR/$DAEMONNAME"
+
+@@ -41,6 +39,17 @@
+ PROCESSLIST=""
+
+ case "${OS}" in
++ freebsd)
++ # Work around bug in some versions of ps(1) where
++ # `ps -o 'pid= command='` doesn't work.
++ for PROC in `ps axw -o 'pid=' -o 'command=' | grep ${DAEMONNAME}.*[-]-updater-daemon`
++ do
++ if [ -z "`$ECHO ${PROC} | sed -e s/[0-9]//g`" ]
++ then
++ PROCESSLIST="${PROCESSLIST} ${PROC}"
++ fi
++ done
++ ;;
+ sunos)
+ for PROC in `ps -Ao pid,args | grep ${DAEMONNAME}.*[-]-updater-daemon`
+ do
+@@ -64,63 +73,41 @@
+
+ case "$1" in
+ start)
+- $ECHO -n "Starting AntiVir: avupdater"
+-
+- if [ ! -x "$DAEMON" ]
+- then
+- $ECHO " (FAILED)"
+- $ECHO " "
+- $ECHO "error: $DAEMON is missing"
+- $ECHO " "
+- exit 1
+- fi
+-
+- $DAEMON --updater-daemon -q
+-
+- if [ $? -ne 0 ]
+- then
+- $ECHO " (FAILED)"
+- $ECHO " "
+- $ECHO "error: $DAEMONNAME failed to start"
+- $ECHO "See log files for details."
+- $ECHO " "
+- exit 1
++ if [ -x "$DAEMON" ]; then
++ $DAEMON --updater-daemon -q \
++ -C %%PREFIX%%/etc/antivir.conf
++ if [ $? -eq 0 ]; then
++ $ECHO -n " avupdater"
++ fi
+ fi
+-
+- $ECHO "."
+ ;;
+ stop)
+- $ECHO -n "Stopping AntiVir: avupdater"
+-
+ getPROCESSLIST
+ for PROC in $PROCESSLIST
+ do
+ kill -15 $PROC
+ done
+
+- $ECHO "."
++ $ECHO -n " avupdater"
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ status)
+- $ECHO -n "AntiVir Status: avupdater "
+-
+ getPROCESSLIST
+ if [ ! -z "$PROCESSLIST" ]
+ then
+- $ECHO -n "(running)"
++ $ECHO "OK avupdater is running!"
+ RC=0
+ else
+- $ECHO -n "(not running)"
++ $ECHO "FAILED avupdater is not running!"
+ RC=3
+ fi
+- $ECHO "."
+ exit $RC
+ ;;
+ *)
+- $ECHO "usage: $0 {start|stop|restart|status}"
++ $ECHO "Usage: `basename $0` {start|stop|restart|status}" >&2
+ exit 1
+ ;;
+ esac
diff --git a/security/antivir-milter/pkg-message b/security/antivir-milter/pkg-message
index a26af98..9663878 100644
--- a/security/antivir-milter/pkg-message
+++ b/security/antivir-milter/pkg-message
@@ -11,8 +11,12 @@ INPUT_MAIL_FILTER(
Don't forget to rebuild sendmail.cf and to restart Sendmail afterwards.
For automated updates of the anti-virus engine and the virus definition
-file add the following line to your /etc/crontab:
+file either add the following line to your /etc/crontab to run them via
+cron(8):
25 0 * * * root %%PREFIX%%/sbin/antivirupdater -q
+or execute the following command to enabled the AntiVir Updater daemon:
+cp %%PREFIX%%/etc/rc.d/avupdater.sh-dist_avmilter \
+%%PREFIX%%/etc/rc.d/avupdater.sh
For full functionality of AntiVir Milter you need to obtain a license
key from H+BEDV Datentechnik GmbH. To install it, execute the following
diff --git a/security/antivir-milter/pkg-plist b/security/antivir-milter/pkg-plist
index 8055da1..b375633 100644
--- a/security/antivir-milter/pkg-plist
+++ b/security/antivir-milter/pkg-plist
@@ -24,6 +24,8 @@ etc/avmilter/avmilter.warn.sample
etc/antivir.conf.sample
@exec [ -f %B/antivir.conf ] || cp %B/%f %B/antivir.conf
etc/rc.d/avmilter.sh
+etc/rc.d/avupdater.sh-dist_avmilter
+@unexec if [ -f %B/avupdater.sh ]; then echo "If permanently deleting this package, %B/avupdater.sh must be removed manually."; fi
sbin/antivirupdater
sbin/avmilter
@exec install -d -o smmsp -g smmsp -m 700 /var/spool/avmilter
@@ -84,6 +86,5 @@ sbin/avmilter
%%PORTDOCS%%%%DOCSDIR%%/MANUAL
%%PORTDOCS%%%%DOCSDIR%%/README.gpg
%%PORTDOCS%%%%DOCSDIR%%/avmilter_de.pdf
-%%PORTDOCS%%%%DOCSDIR%%/avmilter_en.pdf
%%PORTDOCS%%%%DOCSDIR%%/antivir.gpg
%%PORTDOCS%%@dirrm %%DOCSDIR%%
OpenPOWER on IntegriCloud