Timo Sirainen schreef:
On Fri, 2009-08-07 at 19:21 +0200, Stephan Bosch wrote:
dovecot: deliver(username): sieve: msgid=<...>: discarding vacation response for 
message implicitly delivered to <usern...@fqdn.hostname.com>

Our final recipients are in the form of usern...@fqdn.hostname.com; it looks 
like this is being matched in sieve as address. But we want to match against 
original recipient address, not address after alias expansion.

Any ideas?
Currently, you need to add all allowed aliases to the :addresses argument of the vacation command. My TODO list contains a new feature that lets you extract additional valid aliases directly from a dictionary (e.g. an SQL database). It is not at the top of my TODO list yet, but since you are not the only one needing this, I'll give it some more priority.

I don't think the above really needs a dict? Rather maybe there's a way
to have the script check the original unexpanded address. Is it stored
in some specific header, or how would Dovecot/Sieve know about it?
That is the problem. It usually isn't available anywhere, except perhaps in the Received: headers. Parsing those should yield all intermittent destination addresses. When one of those is also listed in one of the relevant headers of the message itself (To, Cc, Bcc, Resent-To, Resent-Cc, or Resent-Bcc), the vacation action would succeed.

I am not sure how valid and safe this is.


Regards,

--
Stephan Bosch
step...@rename-it.nl

Reply via email to