https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6241

--- Comment #3 from Mark Martinec <[email protected]> 2009-12-16 04:46:15 
UTC ---
> yep, this is pretty serious brokenness.

Actually, not only that it does not understand a nested if.
I tried replacing nested 'if's with four independent ifs
( rulesrc/sandbox/khopesh/20_khop_bl.cf ) :

if plugin(Mail::SpamAssassin::Plugin::SPF) &&
plugin(Mail::SpamAssassin::Plugin::DKIM)
  meta   __NOT_SPOOFED  ALL_TRUSTED || SPF_PASS || DKIM_VALID
endif
if plugin(Mail::SpamAssassin::Plugin::SPF) &&
!plugin(Mail::SpamAssassin::Plugin::DKIM)
  meta   __NOT_SPOOFED  ALL_TRUSTED || SPF_PASS
endif
if !plugin(Mail::SpamAssassin::Plugin::SPF) &&
plugin(Mail::SpamAssassin::Plugin::DKIM)
  meta   __NOT_SPOOFED  ALL_TRUSTED || DKIM_VALID
endif
if !plugin(Mail::SpamAssassin::Plugin::SPF) &&
!plugin(Mail::SpamAssassin::Plugin::DKIM)
  # Neither DKIM nor SPF ... ugh.
  meta   __NOT_SPOOFED  ALL_TRUSTED
endif
tflags   __NOT_SPOOFED  nice


and the:
  perl build/mkrules --exit_on_no_src --src rulesrc --out rules \
    --manifest MANIFEST --manifestskip MANIFEST.SKIP
produced the following single 'if' in rules/72_active.cf:

if plugin(Mail::SpamAssassin::Plugin::SPF) &&
plugin(Mail::SpamAssassin::Plugin::DKIM)
  meta   __NOT_SPOOFED  ALL_TRUSTED || SPF_PASS || DKIM_VALID
  meta   __NOT_SPOOFED  ALL_TRUSTED || SPF_PASS
  meta   __NOT_SPOOFED  ALL_TRUSTED || DKIM_VALID
  meta   __NOT_SPOOFED  ALL_TRUSTED
tflags   __NOT_SPOOFED  nice
endif

-- 
Configure bugmail: 
https://issues.apache.org/SpamAssassin/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

Reply via email to