Re: [AMaViS-user] adding header to mail

2010-01-08 Thread Mark Martinec
Replying to an old thread, with some new information:

On Monday 05 October 2009 20:01:29 Stefan wrote:
> > I'm using SpamAssassin with the URICountry Plugin. Now I would like to
> > add a X-URI-Country: header to the scanned message. Therefore I added the
> > following lines to the URICountry.pm module:
> >
> >   # Build a string of all found countries and export it as a tag
> >   my $countries = "";
> >   foreach my $country (keys(%countries)) {
> > $countries .= uc($country) ." ";
> >   }
> >   chop $countries;
> >   $opts->{permsgstatus}->set_tag("URICOUNTRY", $countries);


> >   package Amavis::Custom;
> >   [...]
> >   sub before_send {
> > my($self,$conn,$msginfo) = @_;
> > my($uri_country) = $msginfo->supplementary_info('URICOUNTRY');
> > if (defined $uri_country && $uri_country ne '') {
> > my($hdr_edits) = $msginfo->header_edits;
> > my($all_local) = !grep { !$_->recip_is_local }
> >@{$msginfo-per_recip_data};
> > $hdr_edits->add_header('X-URI-Countries',
> >   $uri_country)  if $all_local;
> > }
> >   };
> >
> > I can use the URICOUNTRY tag with the command 'spamassassin' (e.g. in a
> > template like 30_text_de.cf). But amavisd doesn't add a header because
> > URICOUNTRY is empty (=""). Why doesn't amavisd see the content of
> > URICOUNTRY?

> The concept I like to use is the same as with the RelayCountry plugin.
> I guess the problem is that the RelayCountry plugin is collecting its data
> much earlier (in the sub function extract_metadata) as the URICountry
> plugin. The URICountry plugin is collecting its data in the sub function
> parsed_metadata. Both plugins set the tag in the parsed_metadata function.
> But only the RelayCountry plugin can create an additional header (with
> put_metadata) in the extract_metadata function.
> 
> So maybe the problem is that the plugin can't create an additional header
> and assign it to the tag. But on the other side is amavisd only evaluating
> the tag and not the header.
> 
> So, any ideas why amavisd can not read the content of the tag URICOUNTRY?

The $msginfo->supplementary_info gets filled in a sub call_spamassassin
from a list of 'interesting' tags. You need to add URICOUNTRY to that list:

for my $t (qw(TESTS AUTOLEARN AUTOLEARNSCORE SC SCRULE SCTYPE
  LANGUAGES RELAYCOUNTRY ASN ASNCIDR DCCB DCCR DCCREP
  DKIMDOMAIN DKIMIDENTITY AWLSIGNERMEAN
  CRM114STATUS CRM114SCORE CRM114CACHEID)) {
  $supplementary_info{$t} = $per_msg_status->get_tag($t);
}


With the next release of amavisd, along with SpamAssassin 3.3.0, amavisd
will be able to 'see' added header fields as prepared by SpamAssassin
(through its 'add_header ... _URICOUNTRY_' config option),
and insert them into the mail header section, which will eliminate the
need to collect SA tags and pass them through the supplementary_info
mechanism.

  Mark

--
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
___
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net 
https://lists.sourceforge.net/lists/listinfo/amavis-user 
 AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3 
 AMaViS-HowTos:http://www.amavis.org/howto/ 


Re: [AMaViS-user] adding header to mail

2009-10-05 Thread Stefan
Hello list,

maybe I wasn't clear. So I will try to explain it again.
 
> I'm using SpamAssassin with the URICountry Plugin. Now I would like to add
>  a X-URI-Country: header to the scanned message. Therefore I added the
>  following lines to the URICountry.pm module:
> 
>   # Build a string of all found countries and export it as a tag
>   my $countries = "";
>   foreach my $country (keys(%countries)) {
> $countries .= uc($country) ." ";
>   }
>   chop $countries;
> 
>   $opts->{permsgstatus}->set_tag ("URICOUNTRY", $countries);

I put the whole plugin into the appendix.

> Then I added the following lines to amavisd-custom.conf:
> 
>   package Amavis::Custom;
>   use strict;
> 
>   sub new {
> my($class,$conn,$msginfo) = @_;
> bless {}, $class;
>   }
> 
>   sub before_send {
> my($self,$conn,$msginfo) = @_;
> my($uri_country) = $msginfo->supplementary_info('URICOUNTRY');
> if (defined $uri_country && $uri_country ne '') {
> my($hdr_edits) = $msginfo->header_edits;
> my($all_local) = !grep { !$_->recip_is_local } @{$msginfo-
> 
> >per_recip_data};
> 
> $hdr_edits->add_header('X-URI-Countries', $uri_country)  if
> $all_local;
> }
> 
>   };
>   1;  # insure a defined return
> 
> I can use the URICOUNTRY tag with the command 'spamassassin' (e.g. in a
> template like 30_text_de.cf). But amavisd doesn't add a header because
> URICOUNTRY is empty (=""). Why doesn't amavisd see the content of
>  URICOUNTRY?

The concept I like to use is the same as with the RelayCountry plugin.
I guess the problem is that the RelayCountry plugin is collecting its data 
much earlier (in the sub function extract_metadata) as the URICountry plugin. 
The URICountry plugin is collecting its data in the sub function 
parsed_metadata. Both plugins set the tag in the parsed_metadata function. But 
only the RelayCountry plugin can create an additional header (with 
put_metadata) in the extract_metadata function.

So maybe the problem is that the plugin can't create an additional header and 
assign it to the tag. But on the other side is amavisd only evaluating the tag 
and not the header. 

So, any ideas why amavisd can not read the content of the tag URICOUNTRY?

> I use: amavisd-new 2.6.2 and SpamAssassin 3.2.5

Thanks for your help.
Greetings
Stefan
--
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf___
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net 
https://lists.sourceforge.net/lists/listinfo/amavis-user 
 AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3 
 AMaViS-HowTos:http://www.amavis.org/howto/ 

Re: [AMaViS-user] adding header to mail

2009-10-03 Thread Benny Pedersen
On fre 02 okt 2009 22:57:03 CEST, Michael Scheidell wrote
> do this in local.cf:
> add_header all Relay-Country _RELAYCOUNTRY_

this only works for spamd, not amavisd

> make sure this is in init.pre:
> loadplugin Mail::SpamAssassin::Plugin::RelayCountry
>
> use stuff like this in local.cf:
>
> score RELAY_COUNTRY_KR 5
> score RELAY_COUNTRY_CN 5
> score RELAY_COUNTRY_HK 5

>> Then I added the following lines to amavisd-custom.conf:

keep this, here is how i do:

   my($rly_country) = $msginfo->supplementary_info('RELAYCOUNTRY');
   if (defined $rly_country && $rly_country ne '') {
 my($hdr_edits) = $msginfo->header_edits;
 my($all_local) = !grep { !$_->recip_is_local }  
@{$msginfo->per_recip_data};
 $hdr_edits->add_header('X-Relay-Countries', $rly_country) if $all_local;
   }



-- 
xpoint


--
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
___
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net 
https://lists.sourceforge.net/lists/listinfo/amavis-user 
 AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3 
 AMaViS-HowTos:http://www.amavis.org/howto/ 


Re: [AMaViS-user] adding header to mail

2009-10-02 Thread Michael Scheidell
Stefan wrote:
> On Friday, 2. Oktober 2009 22:57:03 you wrote:
>   
>> Stefan wrote:
>> 
>>> Hello list,
>>>
>>> I'm using SpamAssassin with the URICountry Plugin. Now I would like to
>>> add a X-URI-Country: header to the scanned message. Therefore I added the
>>> following lines to the URICountry.pm module:
>>>   
>> put your old uricountry.pm back.
>>
>> 

ah, idiot me...

didn't look, sorry, open mouth, insert foot.

_
This email has been scanned and certified safe by SpammerTrap(r). 
For Information please see http://www.spammertrap.com
_

--
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
___
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net 
https://lists.sourceforge.net/lists/listinfo/amavis-user 
 AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3 
 AMaViS-HowTos:http://www.amavis.org/howto/ 


Re: [AMaViS-user] adding header to mail

2009-10-02 Thread Stefan
On Friday, 2. Oktober 2009 22:57:03 you wrote:
> Stefan wrote:
> > Hello list,
> >
> > I'm using SpamAssassin with the URICountry Plugin. Now I would like to
> > add a X-URI-Country: header to the scanned message. Therefore I added the
> > following lines to the URICountry.pm module:
> 
> put your old uricountry.pm back.
> 
> do this in local.cf:
> 
> add_header all Relay-Country _RELAYCOUNTRY_

This will not work with amavisd-new, therefore I have to use amavisd-custom.

> make sure this is in init.pre:
> 
> loadplugin Mail::SpamAssassin::Plugin::RelayCountry
> 
> use stuff like this in local.cf:
> 
> score RELAY_COUNTRY_KR 5
> score RELAY_COUNTRY_CN 5
> score RELAY_COUNTRY_HK 5

You mistake RelayCountry for URICountry. See:
http://wiki.apache.org/spamassassin/URICountryPlugin



Greetings
Stefan

--
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
___
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net 
https://lists.sourceforge.net/lists/listinfo/amavis-user 
 AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3 
 AMaViS-HowTos:http://www.amavis.org/howto/ 


Re: [AMaViS-user] adding header to mail

2009-10-02 Thread Michael Scheidell
Stefan wrote:
> Hello list,
>
> I'm using SpamAssassin with the URICountry Plugin. Now I would like to add a 
> X-URI-Country: header to the scanned message. Therefore I added the following 
> lines to the URICountry.pm module:
>
>   
put your old uricountry.pm back.

do this in local.cf:

add_header all Relay-Country _RELAYCOUNTRY_

make sure this is in init.pre:

loadplugin Mail::SpamAssassin::Plugin::RelayCountry

use stuff like this in local.cf:

score RELAY_COUNTRY_KR 5
score RELAY_COUNTRY_CN 5
score RELAY_COUNTRY_HK 5

>   # Build a string of all found countries and export it as a tag
>   my $countries = "";
>   foreach my $country (keys(%countries)) {
> $countries .= uc($country) ." ";
>   }
>   chop $countries;
>
>   $opts->{permsgstatus}->set_tag ("URICOUNTRY", $countries);
>
> Then I added the following lines to amavisd-custom.conf:
>
>   package Amavis::Custom;
>   use strict;
>
>   sub new {
> my($class,$conn,$msginfo) = @_;
> bless {}, $class;
>   }
>
>   sub before_send {
> my($self,$conn,$msginfo) = @_;
> my($uri_country) = $msginfo->supplementary_info('URICOUNTRY');
> if (defined $uri_country && $uri_country ne '') {
> my($hdr_edits) = $msginfo->header_edits;
> my($all_local) = !grep { !$_->recip_is_local } @{$msginfo-
>   
>> per_recip_data};
>> 
> $hdr_edits->add_header('X-URI-Countries', $uri_country)  if 
> $all_local;
> }
>
>   };
>   1;  # insure a defined return
>
> I can use the URICOUNTRY tag with the command 'spamassassin' (e.g. in a 
> template like 30_text_de.cf). But amavisd doesn't add a header because 
> URICOUNTRY is empty (=""). Why doesn't amavisd see the content of URICOUNTRY?
>
> I use: amavisd-new 2.6.2 and SpamAssassin 3.2.5
>
> Greetings
> Stefan
>
> --
> Come build with us! The BlackBerry® Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay 
> ahead of the curve. Join us from November 9-12, 2009. Register now!
> http://p.sf.net/sfu/devconf
> ___
> AMaViS-user mailing list
> AMaViS-user@lists.sourceforge.net 
> https://lists.sourceforge.net/lists/listinfo/amavis-user 
>  AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3 
>  AMaViS-HowTos:http://www.amavis.org/howto/ 
>   


_
This email has been scanned and certified safe by SpammerTrap(r). 
For Information please see http://www.spammertrap.com
_
--
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
___
AMaViS-user mailing list
AMaViS-user@lists.sourceforge.net 
https://lists.sourceforge.net/lists/listinfo/amavis-user 
 AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3 
 AMaViS-HowTos:http://www.amavis.org/howto/