1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-20 20:09:11 +00:00

Support the changed API of spamassassin 3.0.

Submitted by:	maintainer
This commit is contained in:
Joerg Wunsch 2004-11-03 10:43:32 +00:00
parent 0074518032
commit 89527448a3
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=120693
2 changed files with 64 additions and 0 deletions

View File

@ -7,6 +7,7 @@
PORTNAME= spampd
PORTVERSION= 2.12
PORTREVISION= 1
CATEGORIES= mail perl5
MASTER_SITES= http://www.worlddesign.com/Content/rd/mta/spampd/

View File

@ -0,0 +1,63 @@
--- spampd.orig Tue May 11 09:52:42 2004
+++ spampd Mon Oct 4 15:06:57 2004
@@ -395,7 +395,6 @@
use IO::File;
use Getopt::Long;
use Mail::SpamAssassin;
-use Mail::SpamAssassin::NoMailAudit;
BEGIN {
# Load Time::HiRes if it's available
@@ -464,8 +463,7 @@
my $previous_alarm = alarm($self->{spampd}->{satimeout});
# Audit the message
- my $mail = Mail::SpamAssassin::NoMailAudit->new (
- data => \@msglines );
+ my $mail = $assassin->parse( \@msglines );
# Check spamminess
my $status = $assassin->check($mail);
@@ -475,11 +473,12 @@
my $addingHeader = 0;
if ( $self->{spampd}->{addheader} && length($self->{spampd}->{myhostname}) ) {
- $mail->put_header("X-Spam-Checked-By", $self->{spampd}->{myhostname});
+ $mail->put_metadata("X-Spam-Checked-By", $self->{spampd}->{myhostname});
$addingHeader = 1;
}
# Rewrite mail if high spam factor or options --tagall or --add-sc-header
+ my $msg_resp = '';
if ( $status->is_spam || $self->{spampd}->{tagall} || $addingHeader ) {
# if spam or --tagall, have SA put in its report/headers.
@@ -487,12 +486,14 @@
if ( $self->{spampd}->{debug} ) {
$self->log(2, "Rewriting mail using SpamAssassin"); }
- $status->rewrite_mail;
+ $msg_resp = $status->rewrite_mail;
- }
+ } else {
- my $msg_resp = join '', $mail->header, "\r\n", @{$mail->body};
+ $msg_resp = join '', $mail->get_pristine_header(), "\r\n", @{$mail->get_body()};
+ }
my @resplines = split(/\r?\n/, $msg_resp);
+
# Build the new message to relay
# pause the timeout alarm while we do this (no point in timing
@@ -513,8 +514,8 @@
# Log what we did
my $was_it_spam = 'clean message';
if ($status->is_spam) { $was_it_spam = 'identified spam'; }
- my $msg_score = sprintf("%.2f",$status->get_hits);
- my $msg_threshold = sprintf("%.2f",$status->get_required_hits);
+ my $msg_score = sprintf("%.2f",$status->get_score);
+ my $msg_threshold = sprintf("%.2f",$status->get_required_score);
my $proc_time = sprintf("%.2f", time - $start);
$self->log(2, "$was_it_spam $msgid ($msg_score/$msg_threshold) for ".