]> git.uio.no Git - usit-rt.git/blobdiff - local/lib/RT/Interface/Email/Filter/SpamHeader.pm
Changed SpamHeader to accept SpamNoFilterRegexp
[usit-rt.git] / local / lib / RT / Interface / Email / Filter / SpamHeader.pm
index 58c71fdab680378e172d4377defd895de8f2397a..0b8a0feff1e198e7a313530df5f1ccbf1225f665 100755 (executable)
@@ -49,10 +49,12 @@ sub GetCurrentUser {
     my $head = $Message->head;
 
     if (defined @RT::SpamNoFilter) {
-       my @ToObjs = Mail::Address->parse( $head->get('To') );
+       my $plain_regexp = "";
+       if (defined $RT::SpamNoFilterRegexp) {$plain_regexp = $RT::SpamNoFilterRegexp}     
+       my @ToObjs = Mail::Address->parse( $head->get('To') );
        my @CcObjs = Mail::Address->parse( $head->get('Cc') );
        my @BccObjs = Mail::Address->parse( $head->get('Envelope-To') );
-        my $regexp = ("^(".(join "|",map quotemeta,@RT::SpamNoFilter).")\$");
+        my $regexp = ("^($plain_regexp".(join "|",map quotemeta,@RT::SpamNoFilter).")\$");
        for (@ToObjs, @CcObjs, @BccObjs) {
             if ($_->address =~ m/$regexp/i) {
                $RT::Logger->info("SpamHeader: Accepting message for nonfiltered list - ".$_->address);
@@ -61,7 +63,7 @@ sub GetCurrentUser {
         }
     }
 
-    my $spamtag = $head->get($RT::SpamHeader);
+    my $spamtag = $head->get($RT::SpamHeader) || '';
     if (defined $RT::SpamHighMatch && $spamtag =~ m/$RT::SpamHighMatch/) {
        if ($RT::SpamHighQueue) {
            # Move to spam queue