On Fri, 2014-05-23 at 16:33 -0700, Ian Zimmerman wrote: > On Sat, 24 May 2014 00:51:38 +0200 Karsten Bräckelmann wrote: > > Ian> I mostly get the rest of your answer, but this is incorrect. Same > Ian> user, I'm 100% sure. Unless you count spamd checking on my behalf > Ian> as different user - do you?
> There is no dedicated spamd user - spamd runs as root: Ah, my bad, I mis-interpreted your previous post. > According to the docs, this means spamd _does_ change identity to the > originator when processing each spamc request. Yeah. Back to the original issue of lint check not warning, and the issue being reported in spamd log instead. I stand corrected. *sigh* Turns out lint check is actually doing more than expected, while at the same time failing to correctly validate the configuration. $ echo "no_such_option 1" >> .spamassassin/user_prefs $ echo "loadplugin foo" >> .spamassassin/user_prefs $ spamassassin --lint warn: config: failed to parse line, skipping, in "/home/kb/.spamassassin/user_prefs": no_such_option 1 warn: plugin: failed to parse plugin (from @INC): Can't locate foo.pm in @INC Complaining about the bad option is expected. Complaining about not finding the plugin's Perl module is NOT expected. Lint check should have complained about missing privilege for that option. $ echo "loadplugin Mail::SpamAssassin::Plugin::AutoLearnThreshold" >> .spamassassin/user_prefs $ spamassassin --lint && echo CLEAN CLEAN Look ma, no warning! Yup, that plugin exists alright. That setting should not have passed lint check though, since it simply is not allowed in there. -- 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; }}}