spamassassin-dev September 2011 archive
Main Archive Page > Month Archives  > spamassassin-dev archives
spamassassin-dev: [Bug 6657] can't have both header existence te

[Bug 6657] can't have both header existence test and header field modifier, e.g. exists:References:addr

From: <bugzilla-daemon_at_nospam>
Date: Wed Sep 07 2011 - 18:52:09 GMT

Adam Katz <> changed:

           What |Removed |Added
             Status|RESOLVED |REOPENED
                 CC| |
         Resolution|INVALID |

--- Comment #3 from Adam Katz <> 2011-09-07 18:52:09 UTC ---
(In reply to comment #2)
> Actually, the docs only specifically mention exists:Header and Header:addr as
> special header tests, with no word suggesting Header might be anything more
> complicated than a plain mail header.
> The :addr one might be not that obvious, but exists:name_of_header specifically
> mentions a header name only.
> IMHO, this does not need to be supported, since exists: merely is "a very
> simple version of the above header tests" (quoting the docs) and can easily be
> done with an RE rule. Moreover, I believe the docs do not specifically need to
> forbid this, since it doesn't suggest this to be supported.
> Not a bug IMHO, closing RESOLVED INVALID accordingly. Please feel free to
> re-open the bug report, if you feel strongly about it.

I worry that "invalid regexp" and "missing or invalid delimiters" might be too
vague for troubleshooting this issue.

Also, I think the docs are indeed ambiguous.

First, it is unclear if a blank header will match an exists: test. Second,
:addr is described as modifying the header for the current rule:

> Appending a modifier ":addr" to a header field name will cause everything
> except the first email address to be removed from the header field.

Assuming exists: does not match an empty (but still present) header, this
implies that a header that does not contain an address is empty and therefore
does not match exists: even if it has other data.

-- Configure bugmail: ------- You are receiving this mail because: ------- You are the assignee for the bug.