From d53e6c043d867ae40c2965965edc4f3fc6005ad7 Mon Sep 17 00:00:00 2001 From: LukenShiro Date: Thu, 7 Aug 2014 21:30:05 +0700 Subject: network/spamassassin: Updated for version 3.4.0. Signed-off-by: Willy Sudiarto Raharjo --- network/spamassassin/README | 6 ++ network/spamassassin/SpamAssassin-3.3.2-perl.diff | 97 ----------------------- network/spamassassin/doinst.sh | 1 + network/spamassassin/spamassassin.SlackBuild | 18 ++--- network/spamassassin/spamassassin.info | 6 +- 5 files changed, 18 insertions(+), 110 deletions(-) delete mode 100644 network/spamassassin/SpamAssassin-3.3.2-perl.diff (limited to 'network') diff --git a/network/spamassassin/README b/network/spamassassin/README index 125bd42ebc..bc25ae766e 100644 --- a/network/spamassassin/README +++ b/network/spamassassin/README @@ -8,3 +8,9 @@ other technologies to be quickly wielded against spam and is designed for easy integration into virtually any email system. Before using, please read README.SLACKWARE file. + +Optional Dependencies: +- perl-Geo-IP +- perl-Net-Patricia +- razor-agents +- perl-IO-Socket-IP (Not available on SBo) diff --git a/network/spamassassin/SpamAssassin-3.3.2-perl.diff b/network/spamassassin/SpamAssassin-3.3.2-perl.diff deleted file mode 100644 index 776a7dd3aa..0000000000 --- a/network/spamassassin/SpamAssassin-3.3.2-perl.diff +++ /dev/null @@ -1,97 +0,0 @@ ---- lib/Mail/SpamAssassin/AsyncLoop.pm.orig 2011-06-07 -+++ lib/Mail/SpamAssassin/AsyncLoop.pm 2013-05-29 -@@ -361,5 +361,12 @@ - $now = time; # capture new timestamp, after possible sleep in 'select' - -- while (my($key,$ent) = each %$pending) { -+ # A callback routine may generate another DNS query, which may insert -+ # an entry into the %$pending hash thus invalidating the each() context. -+ # So, make sure that callbacks are not called while the each() context -+ # is open, or avoid using each(). [Bug 6937] -+ # -+ # while (my($key,$ent) = each %$pending) { -+ foreach my $key (keys %$pending) { -+ my $ent = $pending->{$key}; - my $id = $ent->{id}; - if (defined $ent->{poll_callback}) { # call a "poll_callback" if exists -@@ -449,5 +456,6 @@ - my $foundcnt = 0; - my $now = time; -- while (my($key,$ent) = each %$pending) { -+ foreach my $key (keys %$pending) { -+ my $ent = $pending->{$key}; - dbg("async: aborting after %.3f s, %s: %s", - $now - $ent->{start_time}, ---- lib/Mail/SpamAssassin/Conf/Parser.pm.orig 2011-06-07 -+++ lib/Mail/SpamAssassin/Conf/Parser.pm 2013-05-29 -@@ -1249,5 +1249,5 @@ - my $mods = ''; - local ($1,$2); -- if ($re =~ s/^m{//) { -+ if ($re =~ s/^m\{//) { - $re =~ s/}([a-z]*)$//; $mods = $1; - } ---- lib/Mail/SpamAssassin/DnsResolver.pm.orig 2011-06-07 -+++ lib/Mail/SpamAssassin/DnsResolver.pm 2013-05-29 -@@ -441,8 +441,14 @@ - if (!defined($timeout) || $timeout > 0) - { $timer = $self->{main}->time_method("poll_dns_idle") } -+ $! = 0; - ($nfound, $timeleft) = select($rout=$rin, undef, undef, $timeout); - } - if (!defined $nfound || $nfound < 0) { -- warn "dns: select failed: $!"; -+ if ($!) { warn "dns: select failed: $!\n" } -+ else { info("dns: select interrupted") } -+ return; -+ } elsif (!$nfound) { -+ if (!defined $timeout) { warn("dns: select returned empty-handed\n") } -+ elsif ($timeout > 0) { dbg("dns: select timed out %.3f s", $timeout) } - return; - } ---- lib/Mail/SpamAssassin/Message.pm.orig 2011-06-07 -+++ lib/Mail/SpamAssassin/Message.pm 2013-05-29 -@@ -567,5 +567,5 @@ - # bug 5557: windows requires tmp file be closed before it can be rm'd - if (ref $part->{'raw'} eq 'GLOB') { -- close($part->{'raw'}) or die "error closing input file: $!"; -+ close($part->{'raw'}) or warn "error closing input file: $!"; - } - ---- lib/Mail/SpamAssassin/PerMsgStatus.pm.orig 2011-06-07 -+++ lib/Mail/SpamAssassin/PerMsgStatus.pm 2013-05-29 -@@ -421,6 +421,6 @@ - } - -- # ignore tests with 0 score in this scoreset -- next if ($scores->{$test} == 0); -+ # ignore tests with 0 score (or undefined) in this scoreset -+ next if !$scores->{$test}; - - # Go ahead and add points to the proper locations -@@ -1253,11 +1253,10 @@ - my $line = ''; - foreach my $test (sort @{$self->{test_names_hit}}) { -- if (!$line) { -- $line .= $test . "=" . $self->{conf}->{scores}->{$test}; -- } else { -- $line .= $arg . $test . "=" . $self->{conf}->{scores}->{$test}; -- } -+ my $score = $self->{conf}->{scores}->{$test}; -+ $score = '0' if !defined $score; -+ $line .= $arg if $line ne ''; -+ $line .= $test . "=" . $score; - } -- $line ? $line : 'none'; -+ $line ne '' ? $line : 'none'; - }, - ---- lib/Mail/SpamAssassin/Util.pm.orig 2013-05-29 -+++ lib/Mail/SpamAssassin/Util.pm 2013-05-29 -@@ -1583,5 +1583,5 @@ - return undef; # invalid - } -- elsif ($re =~ s/^m{//) { # m{foo/bar} -+ elsif ($re =~ s/^m\{//) { # m{foo/bar} - $delim = '}'; - } diff --git a/network/spamassassin/doinst.sh b/network/spamassassin/doinst.sh index e18d25482e..3cbab13951 100644 --- a/network/spamassassin/doinst.sh +++ b/network/spamassassin/doinst.sh @@ -29,4 +29,5 @@ config etc/mail/spamassassin/v310.pre.new config etc/mail/spamassassin/v312.pre.new config etc/mail/spamassassin/v320.pre.new config etc/mail/spamassassin/v330.pre.new +config etc/mail/spamassassin/v340.pre.new config etc/spamassassin.conf.new diff --git a/network/spamassassin/spamassassin.SlackBuild b/network/spamassassin/spamassassin.SlackBuild index 6df0d06f39..b77c2645b1 100644 --- a/network/spamassassin/spamassassin.SlackBuild +++ b/network/spamassassin/spamassassin.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for spamassassin -# Copyright 2008-2013 LukenShiro, Italy +# Copyright 2008-2014 LukenShiro, Italy # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -24,11 +24,10 @@ # Thanks to Nishant Limbachia for providing a SQL script to be used with # spamassassin database, and most of spamassassin dependencies' scripts. -# Thanks to Mancha on LQ for a patch to suppress log warning. PRGNAM=spamassassin -VERSION=${VERSION:-3.3.2} -BUILD=${BUILD:-2} +VERSION=${VERSION:-3.4.0} +BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -66,12 +65,10 @@ tar xvf $CWD/$SRC_PRGNAM-$VERSION.tar.bz2 cd $SRC_PRGNAM-$VERSION chown -R root:root . find -L . \ - \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \ - -exec chmod 755 {} \; -o \ - \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ - -exec chmod 644 {} \; - -patch -p0 < $CWD/SpamAssassin-3.3.2-perl.diff || exit 1 + \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ + -o -perm 511 \) -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; echo "y" | perl Makefile.PL \ PREFIX=/usr \ @@ -101,6 +98,7 @@ for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done mv v312.pre v312.pre.new mv v320.pre v320.pre.new mv v330.pre v330.pre.new + mv v340.pre v340.pre.new ) # Copy init script to /etc/rc.d and modify it for name consistency diff --git a/network/spamassassin/spamassassin.info b/network/spamassassin/spamassassin.info index fb049d382a..5a3de16984 100644 --- a/network/spamassassin/spamassassin.info +++ b/network/spamassassin/spamassassin.info @@ -1,8 +1,8 @@ PRGNAM="spamassassin" -VERSION="3.3.2" +VERSION="3.4.0" HOMEPAGE="http://spamassassin.apache.org/" -DOWNLOAD="http://www.eu.apache.org/dist/spamassassin/source/Mail-SpamAssassin-3.3.2.tar.bz2" -MD5SUM="253f8fcbeb6c8bfcab9d139865c1a404" +DOWNLOAD="http://www.eu.apache.org/dist/spamassassin/source/Mail-SpamAssassin-3.4.0.tar.bz2" +MD5SUM="46e99adc0affebbe5f3524b4834e0345" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="libwww-perl perl-Crypt-OpenSSL-Bignum perl-Encode-Detect perl-IO-Socket-INET6 perl-IO-Socket-SSL perl-IP-Country perl-Image-Info perl-Mail-DKIM perl-Mail-SPF perl-Net-Ident perl-Net-Server pyzor re2c" -- cgit v1.2.3