On Wed, 2010-07-07 at 17:56 -0400, Dan Mahoney, System Admin wrote:
> The manpage states:
> 
> "Existing command line switches will override any settings in the 
> configuration file."
> 
> What I took from this was that if I specified, say, -d on the command 
> line, it would override what's in the file.  But what this really seems to 
> mean is that you need to specify ALL options when using the command line.

Uh, funny.  First of all, I did not check the spamc code. It's C, not
Perl. ;)

The first thing that came to mind is, it sure it ambiguous. Does "any"
here refer to "any and all that there is"?

Not being a native English speaker, with real-life experience of an
additional necessary translation step from English to the OPs mother
tongue, I myself usually try to disambiguate by adding additional
description.

So, that would be "override any [corresponding] settings", versus
"override any settings, [effectively ignoring the default conf file]".
Again, funny. What does it mean? :)


Thinking about it, there *are* options that are impossible to revert or
overrule. Meaning, once stated in the default spamc.conf file, cannot be
reverted otherwise, unless using -F with a bogus, empty file.

> Is this by design?  With most other programs, it would seem only the 
> options specified on the command line would be overridden (like -d 
> 127.0.0.1 in my example above).

I understand your confusion. However, I guess in this case, given there
are no corresponding "no" prefixed rules to override explicitly set
defaults, "any" indeed means "any and all" by design.


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

Reply via email to