re-add files after conflicting import

This commit is contained in:
kefren 2010-12-24 07:19:35 +00:00
parent cba1cac59a
commit 67d9f10e52
9 changed files with 412 additions and 0 deletions

11
mail/amavisd-new/DESCR Normal file
View file

@ -0,0 +1,11 @@
amavisd-new is an interface between message transfer agent (MTA) and
one or more content checkers, e.g. virus scanners, SpamAssassin, etc.
It is a performance-enhanced and feature-enriched version of amavisd
(which in turn is a daemonized version of AMaViS or amavis-perl).
amavisd-new is normally positioned at or near a central mailer, not
necessarily where user's mailboxes and final delivery takes place. If
you are looking for fully per-user configurable and/or low-message-rate
solution to be placed at the final stage of mail delivery (e.g. called
from procmail), there may be other solutions more appropriate for your
needs.

21
mail/amavisd-new/MESSAGE Normal file
View file

@ -0,0 +1,21 @@
===========================================================================
$NetBSD: MESSAGE,v 1.3 2010/12/24 07:19:35 kefren Exp $
To use amavisd-new, you should install at least one content checker.
Examples of content checkers include the freely-available Clam Anti-Virus
(mail/p5-Mail-ClamAV) and SpamAssassin (mail/spamassassin).
amavisd-new will only scan inside archives if the appropriate unarchiving
tools are available. You may choose to install the following tools to
scan the respective archive types:
arc archivers/arc
freeze archivers/freeze
lha archivers/lha
lzop archivers/lzop
unarj archivers/unarj
unrar archivers/unrar
xbin archivers/xbin
zoo archivers/zoo
===========================================================================

View file

@ -0,0 +1,24 @@
===========================================================================
$NetBSD: MESSAGE.milter,v 1.3 2010/12/24 07:19:35 kefren Exp $
Before using amavisd-new with Sendmail, you must configure Sendmail
properly. Please refer to the following documentation:
${PREFIX}/share/doc/amavisd-new/README.milter
${PREFIX}/share/doc/amavisd-new/README.sendmail
${PREFIX}/share/doc/amavisd-new/README.sendmail-dual
There are several ways to configure Sendmail to pass mail through
amavisd-new depending on your resources and whether you wish to use
libmilter.
If you choose to use libmilter, then you will need to add the following
line to /etc/rc.conf:
amavismilter=YES
Please refer to the comments at the top of the amavismilter rc.d script
for additional rc.conf settings to modify how libmilter and amavisd-new
communicate with each other.
===========================================================================

138
mail/amavisd-new/Makefile Normal file
View file

@ -0,0 +1,138 @@
# $NetBSD: Makefile,v 1.3 2010/12/24 07:19:35 kefren Exp $
DISTNAME= amavisd-new-${VERSION}${PATCHLEVEL}
PKGNAME= amavisd-new-${VERSION}${PATCHLEVEL:S/-//}
CATEGORIES= mail security
MASTER_SITES= http://www.ijs.si/software/amavisd/ \
http://mirrors.catpipe.net/amavisd-new/ \
http://mirror.mainloop.se/amavisd/ \
http://mirror.cedratnet.com/amavisd-new/ \
http://mirror.omroep.nl/amavisd-new/
MAINTAINER= jdunn@aquezada.com
HOMEPAGE= http://www.ijs.si/software/amavisd/
COMMENT= Daemonized interface between MTA and content checkers
LICENSE= gnu-gpl-v2
VERSION= 2.6.4
PATCHLEVEL= # empty
PKG_DESTDIR_SUPPORT= user-destdir
DEPENDS+= p5-Archive-Tar-[0-9]*:../../archivers/p5-Archive-Tar
DEPENDS+= p5-Archive-Zip>=1.14:../../archivers/p5-Archive-Zip
DEPENDS+= p5-BerkeleyDB-[0-9]*:../../databases/p5-BerkeleyDB
DEPENDS+= p5-IO-Compress>=2.017:../../devel/p5-IO-Compress
DEPENDS+= p5-Convert-TNEF-[0-9]*:../../converters/p5-Convert-TNEF
DEPENDS+= p5-Convert-UUlib>=1.05:../../converters/p5-Convert-UUlib
DEPENDS+= p5-Digest-MD5>=2.22:../../security/p5-Digest-MD5
DEPENDS+= p5-Mail-DKIM>=0.31:../../mail/p5-Mail-DKIM
DEPENDS+= p5-MIME-tools>=5.417:../../mail/p5-MIME-tools
DEPENDS+= p5-MailTools>=1.58:../../mail/p5-MailTools
DEPENDS+= p5-IO-stringy-[0-9]*:../../devel/p5-IO-stringy
DEPENDS+= p5-Net-Server>=0.88:../../net/p5-Net-Server
DEPENDS+= p5-Time-HiRes>=1.49:../../time/p5-Time-HiRes
DEPENDS+= p5-Unix-Syslog-[0-9]*:../../sysutils/p5-Unix-Syslog
WRKSRC= ${WRKDIR}/amavisd-new-${VERSION}
CONFLICTS+= amavis-[0-9]*
CONFLICTS+= amavis-perl-[0-9]*
.include "../../mk/bsd.prefs.mk"
USE_TOOLS+= perl:run
REPLACE_PERL+= amavisd amavisd-nanny amavisd-release amavisd-agent
AMAVIS_USER?= vscan
AMAVIS_GROUP?= vscan
AMAVIS_DIR?= ${VARBASE}/amavis
AMAVIS_QUARANTINE?= ${VARBASE}/virusmails
DOCDIR= ${PREFIX}/share/doc/amavisd-new
EGDIR= ${PREFIX}/share/examples/amavisd-new
MESSAGE_SRC= ${PKGDIR}/MESSAGE
PKG_GROUPS_VARS+= AMAVIS_GROUP
PKG_USERS_VARS+= AMAVIS_USER
BUILD_DEFS+= AMAVIS_DIR AMAVIS_QUARANTINE
FILES_SUBST+= AMAVIS_USER=${AMAVIS_USER}
FILES_SUBST+= AMAVIS_GROUP=${AMAVIS_GROUP}
FILES_SUBST+= AMAVIS_DIR=${AMAVIS_DIR}
FILES_SUBST+= AMAVIS_QUARANTINE=${AMAVIS_QUARANTINE:Q}
PKG_GROUPS= ${AMAVIS_GROUP}
PKG_USERS= ${AMAVIS_USER}:${AMAVIS_GROUP}
PKG_GECOS.${AMAVIS_USER}= AMaViS Virus Scanning Account
PKG_HOME.${AMAVIS_USER}= ${AMAVIS_DIR}
PKG_SHELL.${AMAVIS_USER}= ${SH}
RCD_SCRIPTS= amavisd
CONF_FILES= ${EGDIR}/amavisd.conf-minimal ${PKG_SYSCONFDIR}/amavisd.conf
PKG_OPTIONS_VAR= PKG_OPTIONS.amavisd-new
PKG_SUPPORTED_OPTIONS= milter
.include "../../mk/bsd.options.mk"
PLIST_VARS+= milter
.if !empty(PKG_OPTIONS:Mmilter)
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --with-runtime-dir=${AMAVIS_DIR}
CONFIGURE_ARGS+= --with-sockname=${AMAVIS_DIR}/amavisd.sock
CONFIGURE_ARGS+= --with-user=${AMAVIS_USER}
CONFIGURE_ARGS+= --with-milterinc=${BUILDLINK_PREFIX.libmilter}/include
CONFIGURE_ARGS+= --with-milterlib=${BUILDLINK_PREFIX.libmilter}/lib
CONFIGURE_DIRS= helper-progs
BUILD_DIRS= helper-progs
RCD_SCRIPTS+= amavismilter
MESSAGE_SRC+= ${PKGDIR}/MESSAGE.milter
PLIST.milter= yes
PTHREAD_OPTS+= require native # doesn't work with pth
. include "../../mail/libmilter/buildlink3.mk"
. include "../../mk/pthread.buildlink3.mk"
.else
USE_LANGUAGES= # none, not even C
do-build: replace-interpreter
.endif
SUBST_CLASSES+= amavisd
SUBST_STAGE.amavisd= pre-build
SUBST_FILES.amavisd= amavisd amavisd.conf
SUBST_SED.amavisd= \
-e "s|/etc/amavisd.conf|${PKG_SYSCONFDIR}/amavisd.conf|" \
-e "s|@AMAVIS_DIR@|${AMAVIS_DIR}|g" \
-e "s|@AMAVIS_USER@|${AMAVIS_USER}|g" \
-e "s|@AMAVIS_GROUP@|${AMAVIS_GROUP}|g" \
-e "s|@AMAVIS_QUARANTINE@|${AMAVIS_QUARANTINE}|g" \
-e "s|@LOCALBASE@|${LOCALBASE}|g" \
-e "s|@PREFIX@|${PREFIX}|g"
INSTALLATION_DIRS= sbin ${DOCDIR} ${EGDIR}
do-install:
.if !empty(PKG_OPTIONS:Mmilter)
${INSTALL_PROGRAM} ${WRKSRC}/helper-progs/amavis ${DESTDIR}${PREFIX}/sbin
${INSTALL_PROGRAM} ${WRKSRC}/helper-progs/amavis-milter ${DESTDIR}${PREFIX}/sbin
.endif
${INSTALL_SCRIPT} ${WRKSRC}/amavisd ${DESTDIR}${PREFIX}/sbin/amavisd
${INSTALL_SCRIPT} ${WRKSRC}/amavisd-nanny ${DESTDIR}${PREFIX}/sbin/amavisd-nanny
${INSTALL_SCRIPT} ${WRKSRC}/amavisd-release ${DESTDIR}${PREFIX}/sbin/amavisd-release
${INSTALL_SCRIPT} ${WRKSRC}/amavisd-agent ${DESTDIR}${PREFIX}/sbin/amavisd-agent
${INSTALL_DATA} ${WRKSRC}/AAAREADME.first ${DESTDIR}${DOCDIR}
${INSTALL_DATA} ${WRKSRC}/INSTALL ${DESTDIR}${DOCDIR}
${INSTALL_DATA} ${WRKSRC}/LDAP.schema ${DESTDIR}${DOCDIR}
${INSTALL_DATA} ${WRKSRC}/LICENSE ${DESTDIR}${DOCDIR}
${INSTALL_DATA} ${WRKSRC}/MANIFEST ${DESTDIR}${DOCDIR}
${INSTALL_DATA} ${WRKSRC}/RELEASE_NOTES ${DESTDIR}${DOCDIR}
${INSTALL_DATA} ${WRKSRC}/README_FILES/amavisd-new-docs.html ${DESTDIR}${DOCDIR}
for file in README_FILES/README.*; do \
${INSTALL_DATA} ${WRKSRC}/$$file ${DESTDIR}${DOCDIR}; \
done
${INSTALL_DATA} ${WRKSRC}/amavisd.conf ${DESTDIR}${EGDIR}/amavisd.conf-minimal
${INSTALL_DATA} ${WRKSRC}/amavisd.conf-default ${DESTDIR}${EGDIR}
${INSTALL_DATA} ${WRKSRC}/amavisd.conf-sample ${DESTDIR}${EGDIR}
.include "../../mk/bsd.pkg.mk"

45
mail/amavisd-new/PLIST Normal file
View file

@ -0,0 +1,45 @@
@comment $NetBSD: PLIST,v 1.3 2010/12/24 07:19:35 kefren Exp $
${PLIST.milter}sbin/amavis
${PLIST.milter}sbin/amavis-milter
sbin/amavisd
sbin/amavisd-agent
sbin/amavisd-nanny
sbin/amavisd-release
share/doc/amavisd-new/AAAREADME.first
share/doc/amavisd-new/INSTALL
share/doc/amavisd-new/LDAP.schema
share/doc/amavisd-new/LICENSE
share/doc/amavisd-new/MANIFEST
share/doc/amavisd-new/README.banned
share/doc/amavisd-new/README.chroot
share/doc/amavisd-new/README.contributed
share/doc/amavisd-new/README.courier
share/doc/amavisd-new/README.courier-old
share/doc/amavisd-new/README.customize
share/doc/amavisd-new/README.exim_v3
share/doc/amavisd-new/README.exim_v3_app
share/doc/amavisd-new/README.exim_v4
share/doc/amavisd-new/README.exim_v4_app
share/doc/amavisd-new/README.exim_v4_app2
share/doc/amavisd-new/README.ldap
share/doc/amavisd-new/README.lookups
share/doc/amavisd-new/README.milter
share/doc/amavisd-new/README.old.scanners
share/doc/amavisd-new/README.performance
share/doc/amavisd-new/README.policy-on-notifications
share/doc/amavisd-new/README.postfix
share/doc/amavisd-new/README.postfix.html
share/doc/amavisd-new/README.protocol
share/doc/amavisd-new/README.sendmail
share/doc/amavisd-new/README.sendmail-dual
share/doc/amavisd-new/README.sendmail-dual.old
share/doc/amavisd-new/README.sql
share/doc/amavisd-new/README.sql-mysql
share/doc/amavisd-new/README.sql-pg
share/doc/amavisd-new/RELEASE_NOTES
share/doc/amavisd-new/amavisd-new-docs.html
share/examples/amavisd-new/amavisd.conf-default
share/examples/amavisd-new/amavisd.conf-minimal
share/examples/amavisd-new/amavisd.conf-sample
share/examples/rc.d/amavisd
${PLIST.milter}share/examples/rc.d/amavismilter

View file

@ -0,0 +1,6 @@
$NetBSD: distinfo,v 1.3 2010/12/24 07:19:35 kefren Exp $
SHA1 (amavisd-new-2.6.4.tar.gz) = 993b7ca839ce038fd13f65351950f0ef03d99ff9
RMD160 (amavisd-new-2.6.4.tar.gz) = 010dd9bf49a3c7553996c49553fd0fa84ca7bdab
Size (amavisd-new-2.6.4.tar.gz) = 947596 bytes
SHA1 (patch-aa) = d8bc17da9b1d3ef883331d462ee06d534f5ff5b0

View file

@ -0,0 +1,77 @@
#!@RCD_SCRIPTS_SHELL@
#
# $NetBSD: amavisd.sh,v 1.3 2010/12/24 07:19:35 kefren Exp $
#
# PROVIDE: amavisd
# REQUIRE: DAEMON
# BEFORE: mail
#
#
# You will need to set some variables in /etc/rc.conf to start amavisd:
#
# amavisd=YES
#
# The following variables are optional:
#
# amavisd_user="@AMAVIS_USER@" # user to run amavisd as
# amavisd_group="@AMAVIS_GROUP@" # ${amavisd_user}'s group
# amavisd_dirs="@AMAVIS_DIR@" # directories that should be created
# # before starting amavisd
if [ -f /etc/rc.subr ]; then
. /etc/rc.subr
fi
name="amavisd"
rcvar=$name
command="@PREFIX@/sbin/${name}"
command_interpreter="@PERL5@"
pidfile="@AMAVIS_DIR@/amavisd.pid"
required_files="@PKG_SYSCONFDIR@/${name}.conf"
: ${amavisd_user="@AMAVIS_USER@"}
: ${amavisd_group="@AMAVIS_GROUP@"}
: ${amavisd_dirs="@AMAVIS_DIR@ @AMAVIS_DIR@/db @AMAVIS_DIR@/tmp @AMAVIS_QUARANTINE@"}
start_precmd="amavisd_prestart"
stop_cmd="amavisd_stop"
amavisd_prestart()
{
@RM@ -f @AMAVIS_DIR@/amavisd.sock
for dir in ${amavisd_dirs}; do
@MKDIR@ $dir
@CHOWN@ ${amavisd_user}:${amavisd_group} $dir
@CHMOD@ 0750 $dir
done
}
# Net::Server breaks rc.subr's techniques for detecting whether the
# process running at a certain PID is actually the process we wish to
# stop. Just unconditionally send SIGTERM to the PID instead.
#
amavisd_stop()
{
@ECHO@ "Stopping ${name}."
if [ -f ${pidfile} ]; then
pid=`@HEAD@ -1 ${pidfile}`
doit="@SU@ -m ${amavisd_user} -c \"kill ${pid}\""
if ! eval $doit && [ -z "$rc_force" ]; then
return 1
fi
wait_for_pids $pid
fi
@RM@ -f ${pidfile}
for dir in ${amavisd_dirs}; do
@RMDIR@ -p $dir 2>/dev/null || @TRUE@
done
}
if [ -f /etc/rc.subr -a -f /etc/rc.conf \
-a -d /etc/rc.d -a -f /etc/rc.d/DAEMON ]; then
load_rc_config $name
run_rc_command "$1"
else
@ECHO@ -n " ${name}"
eval ${start_precmd}
${command} ${amavisd_flags} ${command_args}
fi

View file

@ -0,0 +1,57 @@
#!@RCD_SCRIPTS_SHELL@
#
# $NetBSD: amavismilter.sh,v 1.3 2010/12/24 07:19:35 kefren Exp $
#
# PROVIDE: amavismilter
# REQUIRE: DAEMON
# BEFORE: mail
#
# To communicate with libmilter through a UNIX domain socket (the
# socket must exist in a location that's writable by the user named
# by ${amavismilter_user}:
#
# amavismilter_flags="-p local:/path/to/socket"
#
# To communicate with libmilter through a TCP/IP socket:
#
# amavismilter_flags="-p inet:port@0.0.0.0"
#
# To communicate with libmilter through a TCP/IP socket restricted to a
# particular interface address:
#
# amavismilter_flags="-p inet:port@A.B.C.D"
#
if [ -f /etc/rc.subr ]; then
. /etc/rc.subr
fi
name="amavismilter"
rcvar=$name
command="@PREFIX@/sbin/amavis-milter"
required_vars="amavisd"
: ${amavismilter_user="@AMAVIS_USER@"}
: ${amavismilter_flags="-p local:@AMAVIS_DIR@/amavis-milter.sock"}
start_precmd="amavismilter_precmd"
# Before starting amavis-milter, remove the old milter socket if it exists.
amavismilter_precmd()
{
set -- ${amavismilter_flags}
case $2 in
local:*)
@RM@ -f "${2#local:}"
;;
esac
}
if [ -f /etc/rc.subr -a -f /etc/rc.conf \
-a -d /etc/rc.d -a -f /etc/rc.d/DAEMON ]; then
load_rc_config $name
run_rc_command "$1"
else
@ECHO@ -n " ${name}"
eval ${start_precmd}
${command} ${amavismilter_flags} ${command_args}
fi

View file

@ -0,0 +1,33 @@
$NetBSD: patch-aa,v 1.3 2010/12/24 07:19:35 kefren Exp $
--- amavisd.conf.orig 2008-06-24 22:23:05.000000000 -0400
+++ amavisd.conf 2008-06-24 22:25:53.000000000 -0400
@@ -15,15 +15,15 @@
# $bypass_decode_parts = 1; # controls running of decoders&dearchivers
$max_servers = 2; # num of pre-forked children (2..30 is common), -m
-$daemon_user = 'vscan'; # (no default; customary: vscan or amavis), -u
-$daemon_group = 'vscan'; # (no default; customary: vscan or amavis), -g
+$daemon_user = '@AMAVIS_USER@'; # (no default; customary: vscan or amavis), -u
+$daemon_group = '@AMAVIS_GROUP@'; # (no default; customary: vscan or amavis), -g
$mydomain = 'example.com'; # a convenient default for other settings
-# $MYHOME = '/var/amavis'; # a convenient default for other settings, -H
+$MYHOME = '@AMAVIS_DIR@'; # a convenient default for other settings, -H
$TEMPBASE = "$MYHOME/tmp"; # working directory, needs to exist, -T
$ENV{TMPDIR} = $TEMPBASE; # environment variable TMPDIR, used by SA, etc.
-$QUARANTINEDIR = '/var/virusmails'; # -Q
+$QUARANTINEDIR = '@AMAVIS_QUARANTINE@'; # -Q
# $quarantine_subdir_levels = 1; # add level of subdirs to disperse quarantine
# $release_format = 'resend'; # 'attach', 'plain', 'resend'
# $report_format = 'arf'; # 'attach', 'plain', 'resend', 'arf'
@@ -130,7 +130,7 @@
# $recipient_delimiter = '+'; # undef disables address extensions altogether
# when enabling addr extensions do also Postfix/main.cf: recipient_delimiter=+
-$path = '/usr/local/sbin:/usr/local/bin:/usr/sbin:/sbin:/usr/bin:/bin';
+$path = '@PREFIX@/sbin:@PREFIX@/bin:@LOCALBASE@/sbin:@LOCALBASE@/bin:/usr/sbin:/sbin:/usr/bin:/bin';
# $dspam = 'dspam';
$MAXLEVELS = 14;