duplicate suppression, sieve, loops, redirect and lost email

Cyrus Daboo daboo at cyrusoft.com
Fri Aug 30 17:41:30 EDT 2002


Hi,

--On Friday, August 30, 2002 12:41 PM -0700 "Kevin P. Fleming" 
<kpfleming at cox.net> wrote:

| What I'm suggesting is a lot simpler: when a message is redirected by the
| sieve script, it's message id is stored.
|
| If, during a subsequent invocation of the script, the same message id is
| requested to be redirected again, the redirection is ignored (or turned
| into a keep).

This does not take care of the possibility of multiple message's arriving 
with the same message-id. Some examples:

    So some clever spammer could figure out your process and then send you
    different spam messages all with the same message-id. The first one
    gets redirected to your spam-cop address or whatever, and all
    subsequent ones end up in your INBOX!

    Someone could send a message to a mailing list you're subscribed to and
    also bcc you. That way you get two copies of the same message, the
    first is redirected correctly, the second ends up in your INBOX.

The bottom line is you cannot rely just on the message-id as you suggest 
because message-id alone does not guarantee track a unique message. So you 
need to tag the message in some way. I don't like the idea of overloading 
X-Sieve, perhaps sieve could add an X-Sieve-Redirected header as well that 
contains enough information to prevent loops - what that information is is 
up for grabs. I think rcpt-to as Rob suggested is probably enough, provided 
plus addressing were taken into account (i.e. a rcpt-to of 
'daboo at cyrusoft.com' would be treated as the same as 
'daboo+spam at cyrusoft.com' in terms of looking for redirect loops.

-- 
Cyrus Daboo




More information about the Info-cyrus mailing list