Hi,
I'm currently integrating Sieve into Cyrus. I'm attempting to prevent
loops by preventing multiple messages with identical message-id's from
being processed twice by a Sieve script. However, the envelope test
poses certain complications.
A message may be identical to another, but have a different envelope.
For instance, it might be delivered to both
"leg(_at_)andrew(_dot_)cmu(_dot_)edu" and
"leg+westside(_at_)andrew(_dot_)cmu(_dot_)edu", and I might want to sort based
on the
envelope address. Thus, processing one but not the other address may
lead to unfortunate behavior for a user.
I am proposing the following scheme for my implementation, and would
like some feedback:
the sieve script is executed normally upon the first delivery of a
message
upon subsequent deliveries, the sieve script is run, but only keep,
fileinto, and discard actions are executed; "redirect" and "reject"
are silently ignored. any duplicate delivery to the same mailbox is
ignored.
I'd like feedback on this approach...
Larry