Re: filter on header From:

Marcus Schopen <[email protected]>
Newsgroups gmane.mail.mimedefang
Message-ID <[email protected]>
Hi Kris,

Am Dienstag, den 09.05.2017, 10:51 +0200 schrieb Marcus Schopen:
> Is there a way to load the key-value hash table file only at
> start/reread/reload of mimedefang and not read it on each incoming email
> in filter_end?

Haha, we had a similar discussion three years a ago ;)

http://lists.roaringpenguin.com/pipermail/mimedefang/2014-March/037274.html


This is my mimedefang-filter now:

sub filter_initialize {
   require DB_File;
   use Fcntl;
   tie %testhash_list, "DB_File", "/etc/mail/testhash.db", O_RDONLY;
}

sub filter_cleanup {
        untie %testhash_list;
}

sub filter_end {
    [...]

    # get header From and compare to hash 
    my $fromaddr = $entity->head->get('From');
    $fromaddr =~ s/.+<([^>]+)>/$1/;
    $fromaddr =~ s/\s+$//;
    
    if(exists $testhash_list{lc $fromaddr}) {
       action_add_header("X-SpecialHeader", "$fromaddr is in
testhast_list");
    }

The hash file is created with 

 makemap hash testhash.db < testhash.txt 

The format of the hash file is just

 [email protected]<TAB>1

What I don't understand is, why there is an ending white space on the
header From variable $fromaddr, so I have to trim it with  

  $fromaddr =~ s/\s+$//;

Ciao
Marcus


_______________________________________________
NOTE: If there is a disclaimer or other legal boilerplate in the above
message, it is NULL AND VOID.  You may ignore it.

Visit http://www.mimedefang.org and http://www.roaringpenguin.com
MIMEDefang mailing list [email protected]
http://lists.roaringpenguin.com/mailman/listinfo/mimedefang
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.