Hi,
an introduction first, as rationale.
Several years ago I proofread parts of book which, among other things,
explained how to write sieve scripts. The authors used the header test
throughout. Prose like this:
To test whether an address is addressed to fred(_at_)example(_dot_)org, you
write
if header "to" :is "fred(_at_)example(_dot_)org" {
fileinto "roles/fred";
}
I explained that 'if address' was the right test. They didn't believe
that header was wrong, and showed me examples proving its correctness,
eventually switching to from :is to :contains (mishandling alfred@).
Not sure what the printed book said.
People do misuse header in that way quite often. I've corrected the
error in internet-drafts several times, and recently (a few months ago)
I saw a misused 'if header' in a published RFC.
When even the sieve WG members misuse a test, it's time to adapt the
test to human reality.
So here's my proposal:
1. In the next iteration of base Sieve RFC, either allow or recommend
testing address fields as though 'if address' were specified, even if
'if header' is specified.
2. Publish this an erratum now.
Arnt
_______________________________________________
sieve mailing list
sieve(_at_)ietf(_dot_)org
https://www.ietf.org/mailman/listinfo/sieve