On Fri, 2009-10-23 at 15:12 -0700, Angus Dunn wrote:
> Thank you for the useful tips. I have tried the following:
> 1. trusted_networks/internal_networks - I checked the conf file for
> spamassassin /etc/mail/spamassassin/local.cf, there is no reference to
> trusted_networks or internal_networks. I also clear those two setting just
> in case with the following settings:
As has been clarified, this is not your issue. No way it will skip
scanning.
> clear_trusted_networks
> clear_internal_networks
>
> trusted_networks
> internal_networks
Please check the Conf docs. If you don't have any need to specifically
set them, just leave out all those options and let the magic work.
> But this does not help. The spam emails still did not get tag.
>
> 2. I am using procmailrc to invoke spamassassin.
> Here is the /etc/procmailrc:
> DROPPRIVS=yes
> :0fw
> * < 25600
> | /usr/bin/spamc
That's 25 kByte! Yes, that is your problem. Any mail larger than that
will NOT be processed by SA.
The default has been 500 kByte for a long time, and was 250 kByte
before. That line looks like an obvious *typo* to me. An ancient one.
> As someone suggested, this may be due to size of the email. It looks like
> spamassassion will not be invoked if email is larger than 25600 bytes.
>
> I changed the above to the following:
>
> DROPPRIVS=yes
> :0fw
> * < 102400
> | /usr/bin/spamc
100 kByte, still really low.
> That seems to fix the problem.
> I also have a question:
> Do i really need to check for the size of email? Should I just remove the
> size check?
man spamc. Without that procmail condition, spamc simply will return any
messages exceeding the (default) size limit unprocessed. Using an
explicit limit here will spare the unnecessary filter, since spamc won't
even be called.
I recommend setting it to the limit you want enforced -- and hence
setting it to 500 kByte if you don't want to change the spamc default.
--
char *t="\10pse\0r\0dtu...@ghno\x4e\xc8\x79\xf4\xab\x51\x8a\x10\xf4\xf4\xc4";
main(){ char h,m=h=*t++,*x=t+2*h,c,i,l=*x,s=0; for (i=0;i<l;i++){ i%8? c<<=1:
(c=*++x); c&128 && (s+=h); if (!(h>>=1)||!t[s+h]){ putchar(t[s]);h=m;s=0; }}}