summaryrefslogtreecommitdiff
path: root/mail/p5-Mail-SpamAssassin
diff options
context:
space:
mode:
authorCheng-Lung Sung <clsung@FreeBSD.org>2007-06-02 07:09:46 +0000
committerCheng-Lung Sung <clsung@FreeBSD.org>2007-06-02 07:09:46 +0000
commitbda9441c6a285790fe7d6a18415f206f7893e892 (patch)
treee377f8849cdc490428d85b67a5fb045e6357abab /mail/p5-Mail-SpamAssassin
parent- Update to 3.0.3 (diff)
- SpamAssassin has been updated to 3.2.0
See http://spamassassin.apache.org This is mostly a maintenance and features update. There are however a couple of FreeBsd specific issues: 1) sa-update now puts files into /var/db/spamassassin/{version} where it belongs rather than in the non-standard /var/lib/spamassassin. Thanks to uhlar@fantomas.sk (see PR: ports/108934 2) security, version minimum updates: Compress-Zlib needs to be minimum 1.04, HTML-Parser, 3.3.1, Tar.pm, 1.2.3, gnupg >=1.4.7 (gnupg 2.x preferred) 3) additional files needed: Detect.pm for encoding, p5-Mail-SPF replaces p5-Mail-SPF-Query, newer DKIM replaces DomainKeys 4) sa-compile is broken (need re2c >=.11.3 or it segfaults) 5) tools directory removed (find it in SVN if you need it) 6) patch files added: patch-ImageInfo.pm and patch-sa-compile.raw 7) patch files REMOVED (ports, please note: don't need patch-sa-learn-raw anymore! PR: ports/112502 Submitted by: maintainer (Michael Scheidell)
Notes
Notes: svn path=/head/; revision=192573
Diffstat (limited to 'mail/p5-Mail-SpamAssassin')
-rw-r--r--mail/p5-Mail-SpamAssassin/Makefile94
-rw-r--r--mail/p5-Mail-SpamAssassin/distinfo6
-rw-r--r--mail/p5-Mail-SpamAssassin/files/patch-ImageInfo.pm147
-rw-r--r--mail/p5-Mail-SpamAssassin/files/patch-sa-compile.raw26
-rw-r--r--mail/p5-Mail-SpamAssassin/files/patch-sa-learn-raw14
-rw-r--r--mail/p5-Mail-SpamAssassin/pkg-message6
-rw-r--r--mail/p5-Mail-SpamAssassin/pkg-plist54
7 files changed, 271 insertions, 76 deletions
diff --git a/mail/p5-Mail-SpamAssassin/Makefile b/mail/p5-Mail-SpamAssassin/Makefile
index fbb69059c94f..b6b39556aab7 100644
--- a/mail/p5-Mail-SpamAssassin/Makefile
+++ b/mail/p5-Mail-SpamAssassin/Makefile
@@ -6,8 +6,7 @@
#
PORTNAME= Mail-SpamAssassin
-PORTVERSION= 3.1.8
-PORTREVISION= 1
+PORTVERSION= 3.2.0
CATEGORIES= mail perl5
MASTER_SITES= ${MASTER_SITE_APACHE:S/$/:apache/} ${MASTER_SITE_PERL_CPAN:S/$/:cpan/}
MASTER_SITE_SUBDIR= spamassassin/source/:apache Mail/:cpan
@@ -17,37 +16,49 @@ DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:apache,cpan
MAINTAINER= scheidell@secnap.net
COMMENT= A highly efficient mail filter for identifying spam
-BUILD_DEPENDS= p5-Net-DNS>=0.53:${PORTSDIR}/dns/p5-Net-DNS \
- ${SITE_PERL}/${PERL_ARCH}/HTML/Parser.pm:${PORTSDIR}/www/p5-HTML-Parser \
+BUILD_DEPENDS= p5-Net-DNS>=0.58:${PORTSDIR}/dns/p5-Net-DNS \
+ p5-IO-Zlib>=1.04:${PORTSDIR}/archivers/p5-IO-Zlib \
+ p5-HTML-Parser>=3.43:${PORTSDIR}/www/p5-HTML-Parser \
+ p5-Compress-Zlib>=2.04:${PORTSDIR}/archivers/p5-Compress-Zlib \
${SITE_PERL}/Mail/Internet.pm:${PORTSDIR}/mail/p5-Mail-Tools
+
RUN_DEPENDS= ${BUILD_DEPENDS} \
${SITE_PERL}/Bundle/LWP.pm:${PORTSDIR}/www/p5-libwww \
- ${SITE_PERL}/Archive/Tar.pm:${PORTSDIR}/archivers/p5-Archive-Tar
+ p5-Archive-Tar>=1.23:${PORTSDIR}/archivers/p5-Archive-Tar \
+ ${SITE_PERL}/mach/Encode/Detect.pm:${PORTSDIR}/converters/p5-Encode-Detect
PERL_CONFIGURE= yes
CONFIGURE_ARGS= SYSCONFDIR="${PREFIX}/etc" \
CONTACT_ADDRESS="${CONTACT_ADDRESS}" \
- BUILD_SPAMC=yes
+ LOCALSTATEDIR="/var/db/spamassassin"
# You can override it if you like
CONTACT_ADDRESS?= The administrator of that system
OPTIONS= AS_ROOT "Run spamd as root (recommended)" on \
- DOMAINKEYS "DomainKeys support" off \
- DKIM "DomainKeys Identified Mail" off \
+ SPAMC "Build spamd/spamc (not for amavisd)" on \
+ SACOMPILE "sa-compile" off \
+ DKIM "DKIM/DomainKeys Identified Mail" off \
SSL "Build with SSL support for spamd/spamc" on \
GNUPG "Install GnuPG (for sa-update)" on \
MYSQL "Add MySQL support" off \
PGSQL "Add PostreSQL support" off \
RAZOR "Add Vipul's Razor support" on \
SPF_QUERY "Add SPF query support" off \
- RELAY_COUNTRY "Relay country support" off \
- TOOLS "Install SpamAssassin tools" off
+ RELAY_COUNTRY "Relay country support" off
.include <bsd.port.pre.mk>
+.if defined (WITH_SPAMC)
+CONFIGURE_ARGS+= BUILD_SPAMC=yes
+.else
+CONFIGURE_ARGS+= BUILD_SPAMC=no
+WITH_AS_ROOT=
+WITHOUT_SSL=1
+.endif
+
.if defined(WITH_SPF_QUERY)
-RUN_DEPENDS+= ${SITE_PERL}/Mail/SPF/Query.pm:${PORTSDIR}/mail/p5-Mail-SPF-Query
+RUN_DEPENDS+= ${SITE_PERL}/Mail/SPF.pm:${PORTSDIR}/mail/p5-Mail-SPF
.endif
.if !defined(WITHOUT_SSL)
@@ -62,7 +73,7 @@ CONFIGURE_ARGS+= ENABLE_SSL=no
.endif
.if !defined(WITHOUT_GNUPG)
-RUN_DEPENDS+= gnupg>=1.4.1:${PORTSDIR}/security/gnupg
+RUN_DEPENDS+= gnupg>=1.4.7:${PORTSDIR}/security/gnupg
.endif
.if defined(WITH_MYSQL)
@@ -75,32 +86,29 @@ RUN_DEPENDS+= ${SITE_PERL}/${PERL_ARCH}/DBD/Pg.pm:${PORTSDIR}/databases/p5-DBD-P
.if defined(WITH_RAZOR)
RUN_DEPENDS+= razor-agents>=2.81:${PORTSDIR}/mail/razor-agents
+# see http://www.freebsd.org/cgi/query-pr.cgi?pr=112522
+# really needs razor-agents>=2.82_1
.endif
.if defined(WITH_DKIM)
-RUN_DEPENDS+= ${SITE_PERL}/Mail/DKIM.pm:${PORTSDIR}/mail/p5-Mail-DKIM
+RUN_DEPENDS+= p5-Mail-DKIM>=.20:${PORTSDIR}/mail/p5-Mail-DKIM
+RUN_DEPENDS+= ${SITE_PERL}/IO/Socket/SSL.pm:${PORTSDIR}/security/p5-IO-Socket-SSL
.endif
-.if defined(WITH_DOMAINKEYS)
-RUN_DEPENDS+= p5-Mail-DomainKeys>=0.80:${PORTSDIR}/mail/p5-Mail-DomainKeys
+.if defined(WITH_SACOMPILE)
+# if this fails, you need re2c .12.0:
+# http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/112501
+RUN_DEPENDS+= re2c>=.12.0:${PORTSDIR}/devel/re2c
.endif
.if defined(WITH_RELAY_COUNTRY)
RUN_DEPENDS+= ${SITE_PERL}/IP/Country/Fast.pm:${PORTSDIR}/net/p5-IP-Country
.endif
-.if defined(WITH_TOOLS)
-RUN_DEPENDS+= ${SITE_PERL}/Parse/Syslog.pm:${PORTSDIR}/textproc/p5-Parse-Syslog \
- ${SITE_PERL}/Date/Manip.pm:${PORTSDIR}/devel/p5-Date-Manip \
- ${SITE_PERL}/Net/CIDR/Lite.pm:${PORTSDIR}/net/p5-Net-CIDR-Lite
-TOOLS= ""
-.else
-TOOLS= "@comment "
-.endif
-
MAN3= Mail::SpamAssassin.3 \
Mail::SpamAssassin::AICache.3 \
Mail::SpamAssassin::ArchiveIterator.3 \
+ Mail::SpamAssassin::AsyncLoop.3 \
Mail::SpamAssassin::AutoWhitelist.3 \
Mail::SpamAssassin::Bayes.3 \
Mail::SpamAssassin::BayesStore.3 \
@@ -124,24 +132,32 @@ MAN3= Mail::SpamAssassin.3 \
Mail::SpamAssassin::PerMsgStatus.3 \
Mail::SpamAssassin::PersistentAddrList.3 \
Mail::SpamAssassin::Plugin.3 \
+ Mail::SpamAssassin::Plugin::ASN.3 \
Mail::SpamAssassin::Plugin::AWL.3 \
Mail::SpamAssassin::Plugin::AccessDB.3 \
Mail::SpamAssassin::Plugin::AntiVirus.3 \
Mail::SpamAssassin::Plugin::AutoLearnThreshold.3 \
+ Mail::SpamAssassin::Plugin::BodyRuleBaseExtractor.3 \
+ Mail::SpamAssassin::Plugin::Check.3 \
Mail::SpamAssassin::Plugin::DCC.3 \
Mail::SpamAssassin::Plugin::DKIM.3 \
Mail::SpamAssassin::Plugin::DomainKeys.3 \
Mail::SpamAssassin::Plugin::Hashcash.3 \
Mail::SpamAssassin::Plugin::MIMEHeader.3 \
+ Mail::SpamAssassin::Plugin::OneLineBodyRuleType.3 \
Mail::SpamAssassin::Plugin::Pyzor.3 \
Mail::SpamAssassin::Plugin::Razor2.3 \
Mail::SpamAssassin::Plugin::RelayCountry.3 \
Mail::SpamAssassin::Plugin::ReplaceTags.3 \
+ Mail::SpamAssassin::Plugin::Rule2XSBody.3 \
Mail::SpamAssassin::Plugin::SPF.3 \
+ Mail::SpamAssassin::Plugin::Shortcircuit.3 \
Mail::SpamAssassin::Plugin::SpamCop.3 \
Mail::SpamAssassin::Plugin::Test.3 \
Mail::SpamAssassin::Plugin::TextCat.3 \
Mail::SpamAssassin::Plugin::URIDNSBL.3 \
+ Mail::SpamAssassin::Plugin::URIDetail.3 \
+ Mail::SpamAssassin::Plugin::VBounce.3 \
Mail::SpamAssassin::Plugin::WhiteListSubject.3 \
Mail::SpamAssassin::PluginHandler.3 \
Mail::SpamAssassin::SQLBasedAddrList.3 \
@@ -152,17 +168,15 @@ MAN3= Mail::SpamAssassin.3 \
spamassassin-run.3
MAN1= spamd.1 spamassassin.1 spamc.1 sa-learn.1 sa-update.1 \
- spamassassin-run.1
-
-PLIST_SUB+= TOOLS=${TOOLS}
+ spamassassin-run.1 sa-compile.1
DOCSDIR= ${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME}
DATADIR= ${PREFIX}/share/spamassassin
DOCS= BUGS CREDITS Changes INSTALL LICENSE NOTICE PACKAGING README STATUS TRADEMARK UPGRADE USAGE procmailrc.example
+DOCS= CREDITS Changes INSTALL LICENSE NOTICE PACKAGING README TRADEMARK UPGRADE USAGE procmailrc.example
DOCSSQL= README README.awl README.bayes awl_mysql.sql awl_pg.sql bayes_mysql.sql bayes_pg.sql userpref_mysql.sql userpref_pg.sql
-DOCSCONTRIB= mbox-to-check run-corpora run-masses
DOCSLDAP= README README.testing sa_test.ldif
-PORTDOCS= ${DOCS} sql contrib ldap
+PORTDOCS= ${DOCS} sql ldap
USE_RC_SUBR= sa-spamd.sh
@@ -183,15 +197,13 @@ post-patch:
-e 's#B_CONFDIR)/init.pre#B_CONFDIR)/init.pre.sample#g' \
-e 's#B_CONFDIR)/v310.pre#B_CONFDIR)/v310.pre.sample#g' \
-e 's#B_CONFDIR)/v312.pre#B_CONFDIR)/v312.pre.sample#g' \
+ -e 's#B_CONFDIR)/v320.pre#B_CONFDIR)/v320.pre.sample#g' \
-e 's/require DBI/0/' \
${WRKSRC}/Makefile.PL
-# I cant' seem to get these to work, patches or suggestions welcome
+
.if defined(WITH_RAZOR)
${REINPLACE_CMD} -e '/Razor2/s/^#loadplugin/loadplugin/' ${WRKSRC}/rules/v312.pre
.endif
-.if defined(WITH_DOMAINKEYS)
- ${REINPLACE_CMD} -e '/DomainKeys/s/^#loadplugin/loadplugin/' ${WRKSRC}/rules/v310.pre
-.endif
.if defined(WITH_RELAY_COUNTRY)
${REINPLACE_CMD} -e '/RelayCountry/s/^# ?loadplugin/loadplugin/' ${WRKSRC}/rules/init.pre
.endif
@@ -204,6 +216,9 @@ post-patch:
.if defined(WITH_DCC)
${REINPLACE_CMD} -e '/DCC/s/^#loadplugin/loadplugin/' ${WRKSRC}/rules/v310.pre
.endif
+.if defined(WITH_SACOMPILE)
+ ${REINPLACE_CMD} -e '/Rule2XSBody/s/^#loadplugin/loadplugin/' ${WRKSRC}/rules/v320.pre
+.endif
pre-install:
@${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
@@ -219,17 +234,14 @@ post-install:
@[ -f ${PREFIX}/etc/mail/spamassassin/v312.pre ] || \
${CP} ${PREFIX}/etc/mail/spamassassin/v312.pre.sample \
${PREFIX}/etc/mail/spamassassin/v312.pre
-.if defined(WITH_TOOLS)
- @${MKDIR} ${DATADIR}/tools
- @for f in ${WRKSRC}/tools/*; do \
- ${INSTALL} $${f} ${DATADIR}/tools; \
- done
-.endif
+ @[ -f ${PREFIX}/etc/mail/spamassassin/v320.pre ] || \
+ ${CP} ${PREFIX}/etc/mail/spamassassin/v320.pre.sample \
+ ${PREFIX}/etc/mail/spamassassin/v320.pre
+
.if !defined(NOPORTDOCS)
- @${MKDIR} ${DOCSDIR} ${DOCSDIR}/sql ${DOCSDIR}/contrib ${DOCSDIR}/ldap
+ @${MKDIR} ${DOCSDIR} ${DOCSDIR}/sql ${DOCSDIR}/ldap
@${INSTALL_DATA} ${DOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
@${INSTALL_DATA} ${DOCSSQL:S|^|${WRKSRC}/sql/|} ${DOCSDIR}/sql
- @${INSTALL_DATA} ${DOCSCONTRIB:S|^|${WRKSRC}/contrib/|} ${DOCSDIR}/contrib
@${INSTALL_DATA} ${DOCSLDAP:S|^|${WRKSRC}/ldap/|} ${DOCSDIR}/ldap
.endif
diff --git a/mail/p5-Mail-SpamAssassin/distinfo b/mail/p5-Mail-SpamAssassin/distinfo
index 8cfba1d78c61..51b8ed8edbff 100644
--- a/mail/p5-Mail-SpamAssassin/distinfo
+++ b/mail/p5-Mail-SpamAssassin/distinfo
@@ -1,3 +1,3 @@
-MD5 (Mail-SpamAssassin-3.1.8.tar.gz) = 20a3a6b651a89dcc70634715ca833996
-SHA256 (Mail-SpamAssassin-3.1.8.tar.gz) = 01e5b0d78969cfb0580efb14a7a7212ed3af9f382829afcd61b97a91938831dd
-SIZE (Mail-SpamAssassin-3.1.8.tar.gz) = 1173847
+MD5 (Mail-SpamAssassin-3.2.0.tar.gz) = aed988bb6cf463afc868a64d4cd771a3
+SHA256 (Mail-SpamAssassin-3.2.0.tar.gz) = 4690d2639075dfd376acb3540697861e167a917fd6332bf62b2e754d26ee99be
+SIZE (Mail-SpamAssassin-3.2.0.tar.gz) = 1290995
diff --git a/mail/p5-Mail-SpamAssassin/files/patch-ImageInfo.pm b/mail/p5-Mail-SpamAssassin/files/patch-ImageInfo.pm
new file mode 100644
index 000000000000..71cddfae1587
--- /dev/null
+++ b/mail/p5-Mail-SpamAssassin/files/patch-ImageInfo.pm
@@ -0,0 +1,147 @@
+--- ImageInfo.pm.orig Tue May 1 09:54:09 2007
++++ lib/Mail/SpamAssassin/Plugin/ImageInfo.pm Thu May 3 16:08:29 2007
+@@ -1,10 +1,9 @@
+ # <@LICENSE>
+-# Licensed to the Apache Software Foundation (ASF) under one or more
+-# contributor license agreements. See the NOTICE file distributed with
+-# this work for additional information regarding copyright ownership.
+-# The ASF licenses this file to you under the Apache License, Version 2.0
+-# (the "License"); you may not use this file except in compliance with
+-# the License. You may obtain a copy of the License at:
++# Copyright 2004 Apache Software Foundation
++#
++# Licensed under the Apache License, Version 2.0 (the "License");
++# you may not use this file except in compliance with the License.
++# You may obtain a copy of the License at
+ #
+ # http://www.apache.org/licenses/LICENSE-2.0
+ #
+@@ -16,6 +15,36 @@
+ # </@LICENSE>
+ #
+ # -------------------------------------------------------
++# ImageInfo Plugin for SpamAssassin
++# Version: 0.7
++# Current Home: http://www.rulesemporium.com/plugins.htm#imageinfo
++# Created: 2006-08-02
++# Modified: 2007-01-17
++# By: Dallas Engelken <dallase@uribl.com>
++#
++# Changes:
++# 0.7 - added image_name_regex to allow pattern matching on the image name
++# - added support for image/pjpeg content types (progressive jpeg)
++# - updated imageinfo.cf with a few sample rules for using image_name_regex()
++# 0.6 - fixed dems_ bug in image_size_range_
++# 0.5 - added image_named and image_to_text_ratio
++# 0.4 - added image_size_exact and image_size_range
++# 0.3 - added jpeg support
++# 0.2 - optimized by theo
++# 0.1 - added gif/png support
++#
++# Files:
++# ImageInfo.pm (plugin) - http://www.rulesemporium.com/plugins/ImageInfo.pm
++# imageinfo.cf (ruleset) - http://www.rulesemporium.com/plugins/imageinfo.cf
++#
++# Install:
++# 1) place ruleset in your local config dir
++# 2) place plugin in your plugins dir
++# 3) add to init.pre (or v310.pre) the following line
++# loadplugin Mail::SpamAssassin::Plugin::ImageInfo
++# or if not in plugin dir..
++# loadplugin Mail::SpamAssassin::Plugin::ImageInfo /path/to/plugin
++# 4) restart spamd (if necessary)
+ #
+ # Usage:
+ # image_count()
+@@ -27,7 +56,7 @@
+ # max: optional, if specified, message must not
+ # contain more than this number of images
+ #
+-# examples
++# image_count() examples
+ #
+ # body ONE_IMAGE eval:image_count('all',1,1)
+ # body ONE_OR_MORE_IMAGES eval:image_count('all',1)
+@@ -44,13 +73,24 @@
+ # max: optional, if specified, message must not
+ # contain more than this much pixel area
+ #
+-# examples
++# pixel_coverage() examples
++#
++# body LARGE_IMAGE_AREA eval:pixel_coverage('all',150000) # catches any images that are 150k pixel/sq or higher
++# body SMALL_GIF_AREA eval:pixel_coverage('gif',1,40000) # catches only gifs that 1 to 40k pixel/sql
++#
++# image_name_regex()
++#
++# body RULENAME eval:image_name_regex(<regex>)
++# regex: full quoted regexp, see examples below
++#
++# image_name_regex() examples
++#
++# body CG_DOUBLEDOT_GIF eval:image_name_regex('/^\w{2,9}\.\.gif$/i') # catches double dot gifs abcd..gif
+ #
+-# body LARGE_IMAGE_AREA eval:pixel_coverage('all',150000)
+-# body SMALL_GIF_AREA eval:pixel_coverage('gif',1,40000)
++# See the ruleset for more examples that arent documented here.
+ #
+-# See the ruleset for ways to meta image_count()
+-# and pixel_coverage() together.
++# New functions added in v0.5+ need some documentation here. Or just
++# see .cf for sample rules.
+ #
+ # -------------------------------------------------------
+
+@@ -80,6 +120,7 @@
+ $self->register_eval_rule ("image_size_exact");
+ $self->register_eval_rule ("image_size_range");
+ $self->register_eval_rule ("image_named");
++ $self->register_eval_rule ("image_name_regex");
+ $self->register_eval_rule ("image_to_text_ratio");
+
+ return $self;
+@@ -244,6 +285,34 @@
+
+ # -----------------------------------------
+
++sub image_name_regex {
++ my ($self,$pms,$body,$re) = @_;
++ return unless (defined $re);
++
++ # make sure we have image data read in.
++ if (!exists $pms->{'imageinfo'}) {
++ $self->_get_images($pms);
++ }
++
++ return 0 unless (exists $pms->{'imageinfo'}->{"names_all"});
++
++ my $hit = 0;
++ foreach my $name (keys %{$pms->{'imageinfo'}->{"names_all"}}) {
++ dbg("imageinfo: checking image named $name against regex $re");
++ my $eval = 'if (q{'.$name.'} =~ ' . $re . ') { $hit = 1; } ';
++ eval $eval;
++ dbg("imageinfo: error in regex $re - $@") if $@;
++ if ($hit) {
++ dbg("imageinfo: image_name_regex hit on $name");
++ return 1;
++ }
++ }
++ return 0;
++
++}
++
++# -----------------------------------------
++
+ sub image_count {
+ my ($self,$pms,$body,$type,$min,$max) = @_;
+
+@@ -323,7 +392,8 @@
+ $self->_get_images($pms);
+ }
+
+- return unless (exists $pms->{'imageinfo'}->{"dems_$type"});
++ my $name = 'dems_'.$type;
++ return unless (exists $pms->{'imageinfo'}->{$name});
+
+ foreach my $dem ( keys %{$pms->{'imageinfo'}->{"dems_$type"}}) {
+ my ($h,$w) = split(/x/,$dem);
diff --git a/mail/p5-Mail-SpamAssassin/files/patch-sa-compile.raw b/mail/p5-Mail-SpamAssassin/files/patch-sa-compile.raw
new file mode 100644
index 000000000000..aa27ed66a606
--- /dev/null
+++ b/mail/p5-Mail-SpamAssassin/files/patch-sa-compile.raw
@@ -0,0 +1,26 @@
+--- sa-compile.raw.orig Tue May 1 09:54:33 2007
++++ sa-compile.raw Thu May 3 13:35:23 2007
+@@ -636,7 +636,7 @@
+ -p prefs, --prefspath=file, --prefs-file=file
+ Set user preferences file
+ --siteconfigpath=path Path for site configs
+- (default: /etc/mail/spamassassin)
++ (default: @@LOCAL_RULES_DIR@@)
+ --cf='config line' Additional line of configuration
+ -D, --debug [area=n,...] Print debugging messages
+ -V, --version Print version
+@@ -683,12 +683,12 @@
+ =item B<-C> I<path>, B<--configpath>=I<path>, B<--config-file>=I<path>
+
+ Use the specified path for locating the distributed configuration files.
+-Ignore the default directories (usually C</usr/share/spamassassin> or similar).
++Ignore the default directories (usually <@@DEF_RULES_DIR@@> or similar).
+
+ =item B<--siteconfigpath>=I<path>
+
+ Use the specified path for locating site-specific configuration files. Ignore
+-the default directories (usually C</etc/mail/spamassassin> or similar).
++the default directories (usually C<@@LOCAL_RULES_DIR@@> or similar).
+
+ =item B<--cf='config line'>
+
diff --git a/mail/p5-Mail-SpamAssassin/files/patch-sa-learn-raw b/mail/p5-Mail-SpamAssassin/files/patch-sa-learn-raw
deleted file mode 100644
index e8c2bb9aa1ac..000000000000
--- a/mail/p5-Mail-SpamAssassin/files/patch-sa-learn-raw
+++ /dev/null
@@ -1,14 +0,0 @@
---- sa-learn.raw (revision 507745)
-+++ sa-learn.raw (working copy)
-@@ -402,7 +402,10 @@
-
- # make sure the target list is in the normal AI format
- if ($targets[$elem] !~ /^[^:]*:[a-z]+:/) {
-- $targets[$elem] = target($targets[$elem]);
-+ my $item = splice @targets, $elem, 1;
-+ $elem--; # go back to this element again
-+ target($item); # add back to the list
-+ next;
- }
- }
-
diff --git a/mail/p5-Mail-SpamAssassin/pkg-message b/mail/p5-Mail-SpamAssassin/pkg-message
index bc7b7777ef90..c600e35de546 100644
--- a/mail/p5-Mail-SpamAssassin/pkg-message
+++ b/mail/p5-Mail-SpamAssassin/pkg-message
@@ -19,3 +19,9 @@
* files listed above. *
* *
*************************************************************************
+You may wish to run sa-update now to obtain the latest rules.
+
+NOTE: FREEBSD users: If you are updating to 3.20 you will find
+that sa-update now places state files in /var/db/spamassassin
+and not the default /var/lib/spamassassin. This is to be consistant
+with Freebsd file directory conventions
diff --git a/mail/p5-Mail-SpamAssassin/pkg-plist b/mail/p5-Mail-SpamAssassin/pkg-plist
index ae4d587ec025..b9b3cf4952de 100644
--- a/mail/p5-Mail-SpamAssassin/pkg-plist
+++ b/mail/p5-Mail-SpamAssassin/pkg-plist
@@ -1,10 +1,12 @@
@unexec %D/etc/rc.d/sa-spamd.sh stop > /dev/null 2>&1 || true
@unexec %D/etc/rc.d/sa-spamd stop > /dev/null 2>&1 || true
+bin/sa-compile
bin/sa-learn
bin/sa-update
bin/spamassassin
bin/spamc
bin/spamd
+@unexec rm -rf %D/etc/mail/spamassassin/sa-update-keys || true
etc/mail/spamassassin/local.cf.sample
@unexec if cmp -s %B/init.pre.sample %B/init.pre; then rm -f %B/init.pre; fi
etc/mail/spamassassin/init.pre.sample
@@ -15,9 +17,13 @@ etc/mail/spamassassin/v310.pre.sample
@unexec if cmp -s %B/v312.pre.sample %B/v312.pre; then rm -f %B/v312.pre; fi
etc/mail/spamassassin/v312.pre.sample
@exec [ -f %B/v312.pre ] || cp %B/%f %B/v312.pre
+@unexec if cmp -s %B/v320.pre.sample %B/v320.pre; then rm -f %B/v320.pre; fi
+etc/mail/spamassassin/v320.pre.sample
+@exec [ -f %B/v320.pre ] || cp %B/%f %B/v320.pre
%%SITE_PERL%%/Mail/SpamAssassin.pm
%%SITE_PERL%%/Mail/SpamAssassin/AICache.pm
%%SITE_PERL%%/Mail/SpamAssassin/ArchiveIterator.pm
+%%SITE_PERL%%/Mail/SpamAssassin/AsyncLoop.pm
%%SITE_PERL%%/Mail/SpamAssassin/AutoWhitelist.pm
%%SITE_PERL%%/Mail/SpamAssassin/Bayes.pm
%%SITE_PERL%%/Mail/SpamAssassin/Bayes/CombineChi.pm
@@ -37,7 +43,6 @@ etc/mail/spamassassin/v312.pre.sample
%%SITE_PERL%%/Mail/SpamAssassin/DBBasedAddrList.pm
%%SITE_PERL%%/Mail/SpamAssassin/Dns.pm
%%SITE_PERL%%/Mail/SpamAssassin/DnsResolver.pm
-%%SITE_PERL%%/Mail/SpamAssassin/EvalTests.pm
%%SITE_PERL%%/Mail/SpamAssassin/HTML.pm
%%SITE_PERL%%/Mail/SpamAssassin/Locales.pm
%%SITE_PERL%%/Mail/SpamAssassin/Locker.pm
@@ -59,23 +64,42 @@ etc/mail/spamassassin/v312.pre.sample
%%SITE_PERL%%/Mail/SpamAssassin/PersistentAddrList.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/AWL.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/ASN.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/AccessDB.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/AntiVirus.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/AutoLearnThreshold.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/Bayes.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/BodyEval.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/BodyRuleBaseExtractor.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/Check.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/DCC.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/DKIM.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/DNSEval.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/DomainKeys.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/HTMLEval.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/HTTPSMismatch.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/Hashcash.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/HeaderEval.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/ImageInfo.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/MIMEEval.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/MIMEHeader.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/OneLineBodyRuleType.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/Pyzor.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/Razor2.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/RelayEval.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/RelayCountry.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/ReplaceTags.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/Rule2XSBody.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/SPF.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/Shortcircuit.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/SpamCop.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/Test.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/TextCat.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/URIDNSBL.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/URIDetail.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/URIEval.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/VBounce.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Plugin/WLBLEval.pm
%%SITE_PERL%%/Mail/SpamAssassin/Plugin/WhiteListSubject.pm
%%SITE_PERL%%/Mail/SpamAssassin/PluginHandler.pm
%%SITE_PERL%%/Mail/SpamAssassin/Reporter.pm
@@ -87,29 +111,31 @@ etc/mail/spamassassin/v312.pre.sample
%%SITE_PERL%%/Mail/SpamAssassin/Util/DependencyInfo.pm
%%SITE_PERL%%/Mail/SpamAssassin/Util/Progress.pm
%%SITE_PERL%%/Mail/SpamAssassin/Util/RegistrarBoundaries.pm
+%%SITE_PERL%%/Mail/SpamAssassin/Util/TieOneStringHash.pm
%%SITE_PERL%%/%%PERL_ARCH%%/auto/Mail/SpamAssassin/.packlist
%%SITE_PERL%%/spamassassin-run.pod
-%%DATADIR%%/10_misc.cf
+%%DATADIR%%/10_default_prefs.cf
%%DATADIR%%/20_advance_fee.cf
-%%DATADIR%%/20_anti_ratware.cf
%%DATADIR%%/20_body_tests.cf
%%DATADIR%%/20_compensate.cf
%%DATADIR%%/20_dnsbl_tests.cf
%%DATADIR%%/20_drugs.cf
+%%DATADIR%%/20_dynrdns.cf
%%DATADIR%%/20_fake_helo_tests.cf
%%DATADIR%%/20_head_tests.cf
%%DATADIR%%/20_html_tests.cf
+%%DATADIR%%/20_imageinfo.cf
%%DATADIR%%/20_meta_tests.cf
%%DATADIR%%/20_net_tests.cf
%%DATADIR%%/20_phrases.cf
%%DATADIR%%/20_porn.cf
%%DATADIR%%/20_ratware.cf
%%DATADIR%%/20_uri_tests.cf
+%%DATADIR%%/20_vbounce.cf
%%DATADIR%%/23_bayes.cf
%%DATADIR%%/25_accessdb.cf
%%DATADIR%%/25_antivirus.cf
-%%DATADIR%%/25_body_tests_es.cf
-%%DATADIR%%/25_body_tests_pl.cf
+%%DATADIR%%/25_asn.cf
%%DATADIR%%/25_dcc.cf
%%DATADIR%%/25_dkim.cf
%%DATADIR%%/25_domainkeys.cf
@@ -128,27 +154,19 @@ etc/mail/spamassassin/v312.pre.sample
%%DATADIR%%/30_text_pt_br.cf
%%DATADIR%%/50_scores.cf
%%DATADIR%%/60_awl.cf
+%%DATADIR%%/60_shortcircuit.cf
%%DATADIR%%/60_whitelist.cf
%%DATADIR%%/60_whitelist_dk.cf
%%DATADIR%%/60_whitelist_dkim.cf
%%DATADIR%%/60_whitelist_spf.cf
%%DATADIR%%/60_whitelist_subject.cf
+%%DATADIR%%/72_active.cf
%%DATADIR%%/languages
-%%DATADIR%%/triplets.txt
%%DATADIR%%/sa-update-pubkey.txt
%%DATADIR%%/user_prefs.template
-%%TOOLS%%%%DATADIR%%/tools/README.speedtest
-%%TOOLS%%%%DATADIR%%/tools/check_whitelist
-%%TOOLS%%%%DATADIR%%/tools/convert_awl_dbm_to_sql
-%%TOOLS%%%%DATADIR%%/tools/desc_length.pl
-%%TOOLS%%%%DATADIR%%/tools/mboxsplit
-%%TOOLS%%%%DATADIR%%/tools/sa-stats.pl
-%%TOOLS%%%%DATADIR%%/tools/speedtest
-%%TOOLS%%%%DATADIR%%/tools/split_corpora
-%%TOOLS%%%%DATADIR%%/tools/sysreport
-%%TOOLS%%%%DATADIR%%/tools/test_extract
-%%TOOLS%%%%DATADIR%%/tools/triplets.pl
-%%TOOLS%%@dirrm %%DATADIR%%/tools
+@unexec rm -rf %D/libdata/spamassassin || true
+@unexec rm -rf /var/lib/spamassassin || true
+@unexec rm -rf /var/lib || true
@dirrm %%DATADIR%%
@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/Mail/SpamAssassin
@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Mail