help with sieve
dovecot at paulkoppen.com
dovecot at paulkoppen.com
Wed Mar 30 23:15:26 UTC 2016
Dear Dovecot / Pigeonhole community,
I have a very specific issue, but trying to solve this for a full day, I
am now getting so bold from pulling my hairs out, I thought it was time
I asked for help. I hope this is a good place for that.
At my hosting provider, who have been extremely helpful by the way but
are not specifically skilled in Sieve, I have a catch-all address set
up: *@domain.org (where * is literal), with a sieve script to control
how messages are forwarded. Currently my rules are of the form:
if address :localpart :is ["To","Cc","Bcc"] ["name1", "name2", ...] {
... }
This works most of the time, but sometimes the messages are not directly
addressed to me and so they slip through the filters. I figured that
using envelope would solve this, so I require envelope and then do:
if envelope :localpart :is "To" ["name1", "name2", ...] { ... }
But this fails. After endlessly trying different combinations I figured
out that the reason for failure is that the envelope believes the "To"
is actually "*@domain.org", so it is never going to match any of the
names. However, the following test succeeds:
if header :contains "Envelope-To" "name1@" { ... }
From this I deduce that a previous script has already done the
conversion from name1 to *, and at the point where my sieve script is
run the envelope picks up the *@domain.org address, leaving the
Envelope-To header for what it is. But I am new to this.
Is that likely to be the case? Is it a common sieve set-up? And most
importantly, is there a better way around the issue than testing header
:contains?
With kind regards,
Paul
More information about the dovecot
mailing list