ietf-mta-filters
[Top] [All Lists]

Re: Language for conflicting actions

1999-01-27 21:20:23
Date: 27 Jan 1999 23:20:17 -0500
From: Tim Showalter <tjs+(_at_)andrew(_dot_)cmu(_dot_)edu>

Date: Mon, 25 Jan 1999 18:20:00 -0800
From: Randall Gellens <randy(_at_)Qualcomm(_dot_)Com>

Command Interactions

It is possible for two or more actions to be executed by a script.  A
script MUST NOT perform any action before finishing execution, and
MUST check that the actions are consistent (according the the
following chart).

When we discussed parsing before executing (to trap syntax errors), 
it was decided that this was a quality of implementation issue, not a 
Sieve requirement.  Why should this be any different?

Well, here's the problem.  Reject and forward are mutually exclusive
(or, IMHO, should be, because I have a very hard time with the idea that 
a standards-track document should provide for bogus DSNs.)

If you reject a message, you have to throw it away; the DSN says you
did so.

It was decided some time ago that reject+keep was an absurd thing to do
and should not be allowed, right?

Note that I'm not saying you can't run the script before parsing it.
I'm saying you have to queue up actions before doing any.  That's pretty
easy to implement, even if you sprinkle in the evaluation code in with
the parser -- you just save up a list of all the stuff you're gonna do
and sanity check it before running it.

-- 
Tim Showalter <tjs+(_at_)andrew(_dot_)cmu(_dot_)edu>


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