Sieve forwarding loop destroys e-mail
mills at cc.umanitoba.ca
Sun Mar 30 23:12:33 EDT 2008
On Sun, Mar 30, 2008 at 02:27:29PM +0100, Alain Spineux wrote:
> On Mon, Mar 17, 2008 at 5:39 PM, Gary Mills <mills at cc.umanitoba.ca> wrote:
> > Once again, we had somebody use the sieve facility to redirect e-mail
> > back to the same mailbox and then go on vacation. This sets up a
> > forwarding loop which cyrus breaks by discarding the e-mail. During
> > this vacation, all of the person's e-mail disappeared.
> If you force a "keep" in your sieve script, the mail will be delivered
> at least once in
> the mailbox
It's perfectly valid to have nothing but a `forward' in a sieve
script. People do this all the time when they don't want to keep
a copy for themselves. Unfortunately, some also forward e-mail to
themselves, expecting that to work.
> > Once the message has been `seen' and is about to be forwarded again,
> > it would be better to deliver the message into the mailbox, rather
> > than deleting it. Is this possible with the current design of the
> > duplicate delivery database?
> How can a message be 'seen' if it is not in the mailbox, and how can
> the mailbox owner read this message if he is in vacation ?
> Or you mean 'seen', already in the delivered db ? But then this
> is the job of the delivered db to drop the email to avoid loop.
I suppose I mean `delivered'. Yes, it will be discarded the next time
it's delivered. That's the problem. There needs to be some
connection between delivery and the forwarding process. Of course,
it's impossible to distinguish between a forwarding loop and a real
duplicate unless another `Received' header is added to the message
-Gary Mills- -Unix Support- -U of M Academic Computing and Networking-
More information about the Info-cyrus