[Top] [All Lists]

Re: List of open issues with Sieve reject draft (draft-ietf-sieve-refuse-reject-02.txt)

2006-07-11 11:12:46

On Tue, Jul 11, 2006 at 06:58:08PM +0200, Arnt Gulbrandsen wrote:
It occured to me that if I provide a postffix content filter interface 
to the sieve interpreter, then postfix can do SMTP rejections. The 
sieve interpreter must run the user's regular active script, skip any 
clauses that can't be evaluated (and don't contain stop), and see 
whether a reject is executed. (In my code, this happens to be fairly 
simple.) Done.

The only problem is that I cannot with good conscience execute a 
possibly invalid action, can I?

No you can't :-)

But I consider this just part of the general problem of what to do with
execution errors.  You have to deal with them, whether or not you can
identify right now the specific things that can go wrong in execution.
What do you do with:

    if <some test that succeeds> {
        reject "you aren't mem";
    if <some other test that succeeds> {

(substitute something other than "keep" if that isn't problematic enough.)

Perhaps in the context of a rcpt-to milter you can be a little fast and
loose and stop execution whenever some explicit action is taken.  But
that has problems of its own, not the least of which is that you won't
discover incorrect scripts very easily.

Maybe I'm missing the point though.  


<Prev in Thread] Current Thread [Next in Thread>