On Sat, 2014-05-24 at 03:28 +0100, Martin Gregorie wrote:
> On Sat, 2014-05-24 at 02:36 +0200, Karsten Bräckelmann wrote:

> I've looked down the list a couple of times and didn't see anything I
> thought would affect it due to a possibly bad assumption that this sort
> of error would be insulated from the underlying binary code by at least
> one layer of Perl library code.

Plain spamassassin script works, spamc/d combination does not. Nope,
this is not necessarily related to any Perl code.

Looking through the full list of upgraded packages, the two SELinux
related ones stick out. In particular, since the client / server
environment is affected, but not the standalone variant of calling the
majority of shared SA Perl code.


> > By "started it", do you mean starting the daemon simply for that test,
> > or did you ping spamd after launching your dev test rig?
> 
> Yes, I meant starting it. As I said, this problem surfaced on the box I
> use for SA rules development, actually a Lenovo laptop. Consequently SA
> only runs on it during a rules test: all my test scripts are written to
> start spamd, run the test and stop it.
> 
> > Clean room vs. production conditions...
> 
> Yes, exactly.

Nah. I was talking about the difference in your test (manually starting
spamd) and the environment observed to fail (your dev test rig script).

If you want to debug what might cause spamc/d to fail, you need to
reproduce the environment as close as possible. As is, I cannot even be
sure your manual spamd test and the dev environment do use the same
port, since at least the dev script doesn't sound like root privileges
to me.


> I have another script that copies the SA configuration
> from the testing box to the live machine and then restarts the live copy
> of spamd. That said, the run-time environment of spamd on the testing
> machine is as near to identical with the live system as I can reasonably
> make it.

Unrelated to the problem at hand, but Fedora 18 and Fedora 20 does not
account for "as near to identical" as reasonably possible.


-- 
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; }}}

Reply via email to