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

Re: AD Evaluation Comments: draft-ietf-sieve-vacation-04

2005-10-20 16:35:27

On Thu, Oct 20, 2005 at 03:58:35PM -0400, Mark E. Mallett wrote:

On Thu, Oct 20, 2005 at 01:20:07PM -0400, Scott Hollenbeck wrote:

Section 4.7: "A script will fail if it attempts to execute two or more
vacation actions."
Should "will" be either SHOULD or MUST?  "will" describes an implementation
behavior.

I also had a comment on 4.7 that I sent off-list.  Essentially:

    I did wonder about that wording; seems to me that the the script as
    a whole probably shouldn't fail, but the non-first vacation
    action(s) should give an error.  i.e. duplication vacation actions
    should fail, not abort the entire script.  (Not to mention that if
    the script were to fail on the second "vacation" then there would be
    no need to say "or more".)

The base spec says:

   When an error occurs in a Sieve script, all processing stops.

So either you ignore vacation actions starting at the second one, or
you generate an error.  If an error is generated, all processing stops.
If so, indeed there can't be a third.

I'd say, let's include an example showing two vacation actions and
a fileinto afterwards, stating the fileinto can not happen (assuming
the second vacation action does generate an error), but:

Does the base spec allow action execution reordering?

That's not as crazy as it sounds.  Of course actions with side effects
must not be reordered, that goes without saying.  And how about actions
without side effects?

fileinto "a";
fileinto "b";

If a message is filed to "b", will there be one in "a", or could
both actions be processed simultaneous after the script ran, "a"
fails with a runtime error and "b" suceeds?

I expect that

redirect "a(_at_)nosuchdomain";
redirect "user(_at_)example(_dot_)com";

may well send a message to "user(_at_)example(_dot_)com", despite the first
causing a run-time error, because the action sets up the delivery of
the message, but does not deliver it on its own.  But strictly
speaking, this _is_ action reordering.  We need to say something about
this topic.

In case the second vacation causes an error: How would an example
for that look like?

While thinking about it: The base spec does not define if anyof and
allof perform shortcut/lazy evaluation.  After all the years, all we can
probably do is saying that depends on the implementation.  It should be
mentioned, because it may cause the same script to behave different on
different implementations.

Oh well.

Another nit was:

5.8  In-Reply-To and References
   >
   > Section 3.6.2 of [RFC2822] provides a complete description of how
   > References fields should be generated.

   Pretty sure that's supposed to be section 3.6.4

I agree.

Michael