1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-04 06:15:24 +00:00

- 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)
This commit is contained in:
Cheng-Lung Sung 2007-06-02 07:09:46 +00:00
parent 8565bc34bd
commit bda9441c6a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=192573
7 changed files with 271 additions and 76 deletions

View File

@ -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

View File

@ -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

View File

@ -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);

View File

@ -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'>

View File

@ -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;
}
}

View File

@ -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

View File

@ -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