On Thu, 2008-10-16 at 18:24 -0400, Kris Deugau wrote:
> Karsten Bräckelmann wrote:
> > Unlike regular score lines for non-existent rules (which are kind of
> > ignored), the relative score adjustment depends on the rule to be
> > defined before.
> > 
> > Given your demo rule above,
[...]
> > you are distributing a custom channel. It
> > will work, if you rename the channel name to come after the stock
> > updates channel when sorting lexically.
> 
> *shrug*  It does;  it's called zzsarules.vianet.ca.  When I first 
> created it, I *did* run into problems simply redefining scores at fixed 
> values for rules in other rulesets which were, indeed, sorted *after* my 
> local channel originally (don't recall the details ATM;  pretty sure I 
> posted here asking about it).  Thus the "zz" prefix - but it still 
> doesn't accept a score *adjustment*.

Ah, so it was actually your previous post and the discussion that I
remembered. Already wondered about that. :)  I'm fairly positive this
topic came up exactly once.


> I've isolated an example into a testable "ruleset";  try:
> 
> # sa-update --channel zzsarules.deepnet.cx --nogpg
> 
> (Single scoreadj.cf file, with the single rule
> "score FORGED_MUA_OUTLOOK     (-1)")

Yup, that fails indeed. :/  And I'm fairly sure I see why.

In a previous post I included the relevant lines, why *spamassassin*
lint would not fail. sa-update does, however. In another post to this
thread you pointed out the issue eloquently:

> fwiw, if I manually munge a score adjustment into already-downloaded
> .cf files for a channel, spamassassin --lint is clean...  it's just on
> *distribution* of a channel update containing an adjustment that --lint
> fails.

And indeed sa-update appears to lint -- though ONLY the updated channel,
and the updated channel only. It loads site rules .pre files. It does
NOT do a full configure as spamassassin --lint does.

You can see this easily by running 'sa-update -D'. I guess that's a
bug-let, or at least a not-documented(?) limitation... Update channels
can not *modify* score rules outside its own scope.

  guenther


-- 
char *t="[EMAIL PROTECTED]";
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; }}}

Reply via email to