spamassassin-users March 2011 archive
Main Archive Page > Month Archives  > spamassassin-users archives
spamassassin-users: Re: Reproducing Bug 6559

Re: Reproducing Bug 6559

From: Karsten Bräckelmann <guenther_at_nospam>
Date: Mon Mar 21 2011 - 03:27:29 GMT
To: users@spamassassin.apache.org

> > Another might be to reproduce the issue, and get a minimal test-case.
>
> Just received a reply privately, containing like heaps of information
> and debugging. Two very noteworthy points it appears to surface.
>
> (a) The actual rule that triggers this is the __PILL_PRICE_3 variant.

Scratch that, probably a red herring. Focus on the usage of space,
instead of \s in each of these rules.

> (b) It might be due to the usage of \s.
>
> Which reminded me -- something I thought about seeing the original
> rules, but now it might be key to the re2c compilation problem.
>
>
> These sub-rules are body tests. That is a *normalized* version of the
> original body. Within a paragraph (in the old-school double newline
> sense), there is only one kind of whitespace. A space. There are no
> tabs, nor newlines -- and no multiple, consecutive occurrences of
> whitespace.
>
> IF the \s turns out to be part of the problem, a simple SPACE instead
> would do just as fine for body rules.
>
> If you change any occurrence of \s in the original sub-rules
> (specifically the third one) to a simple space, does that fix the issue?

Most helpful users on the US east coast going to hit the sleeves soon.
What the fuck am I still doing here!? ;-)

-- char *t="\10pse\0r\0dtu\0.@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; }}}