Re: more 3028bis comments

Ned Freed <ned.freed@mrochek.com> Wed, 06 July 2005 01:11 UTC

Received: from above.proper.com (localhost.vpnc.org [127.0.0.1]) by above.proper.com (8.12.11/8.12.9) with ESMTP id j661BUEN030521; Tue, 5 Jul 2005 18:11:30 -0700 (PDT) (envelope-from owner-ietf-mta-filters@mail.imc.org)
Received: (from majordom@localhost) by above.proper.com (8.12.11/8.12.9/Submit) id j661BU0l030520; Tue, 5 Jul 2005 18:11:30 -0700 (PDT)
X-Authentication-Warning: above.proper.com: majordom set sender to owner-ietf-mta-filters@mail.imc.org using -f
Received: from mauve.mrochek.com (mauve.mrochek.com [209.55.107.55]) by above.proper.com (8.12.11/8.12.9) with ESMTP id j661BRJG030512 for <ietf-mta-filters@imc.org>; Tue, 5 Jul 2005 18:11:29 -0700 (PDT) (envelope-from ned.freed@mrochek.com)
Received: from mauve.mrochek.com by mauve.mrochek.com (PMDF V6.1-1 #35243) id <01LQ54UN318W00004T@mauve.mrochek.com> for ietf-mta-filters@imc.org; Tue, 05 Jul 2005 18:11:25 -0700 (PDT)
Cc: Mark E Mallett <mem@mv.mv.com>, ietf-mta-filters@imc.org
To: Kjetil Torgrim Homme <kjetilho@ifi.uio.no>
Message-id: <01LQ9XC4CXZ200004T@mauve.mrochek.com>
Date: Tue, 05 Jul 2005 17:46:18 -0700
From: Ned Freed <ned.freed@mrochek.com>
Subject: Re: more 3028bis comments
In-reply-to: "Your message dated Wed, 06 Jul 2005 00:48:12 +0200" <1120603692.28056.33.camel@chico.njus.no>
MIME-version: 1.0
Content-type: TEXT/PLAIN
References: <20050705205200.GR94636@osmium.mv.net> <1120603692.28056.33.camel@chico.njus.no>
Sender: owner-ietf-mta-filters@mail.imc.org
Precedence: bulk
List-Archive: <http://www.imc.org/ietf-mta-filters/mail-archive/>
List-ID: <ietf-mta-filters.imc.org>
List-Unsubscribe: <mailto:ietf-mta-filters-request@imc.org?body=unsubscribe>

> On Tue, 2005-07-05 at 16:52 -0400, Mark E. Mallett wrote:
> > 2.2.     Whitespace
> >
> >    > Whitespace is used to separate tokens.  Whitespace is made up of
> >    > tabs, newlines (CRLF, never just CR or LF), and the space character.
> >    > The amount of whitespace used is not significant.
> >
> > This is specifically about whitespace in the Sieve language.  So... how
> > many implementations violate this?  i.e., does everyone generate an
> > error if a script's whitespace contains a naked CR or LF ?

> does it matter?  this text is unchanged from RFC 3028, so it will not
> affect conformance.

I see no "MUST generate an error" clause here, so as far as I'm concerned the
handling of bare CR and bare LF means you have a nonconformant script, but how
implementations handle this particular form of nonconformance is undefined.

Attempting to nail this down to a "MUST generate an error" would be a huge
mistake IMO, given the use of bare LF and bare CR as the default line
terminators on many systems. And I really don't want to repeat the whole
"canonical format versus local storage format" discussion again, thank you very
much. So let's let this particular sleeping dog lie, OK?

> > 2.10.6.  Errors
> >
> >    > When an error happens, implementations MUST notify the user that an
> >    > error occurred, which actions (if any) were taken, and do an implicit
> >    > keep.
> >
> > Probably extremely nit-picky, but I've always wondered when I read
> > this "what user, and how do we notify them?"  Some users have no
> > access to anything other than their mailboxes.  I suspect that many
> > implementations will do some system-wide logging, which notifies the
> > admin, but not the user.

> good question.  delivering an error report to INBOX in addition to the
> message is one way of solving this, but does anyone do this?

We do. Our implementation has the concept of a "responsible address" that's
attached to each sieve script. When an error occurs this address is notified of
the problem. For user sieves this is the user's own address, system sieves have
the main system postmaster as the responsible address, and so on.

Of course the delivery of such notifications has to be done in a way
that doesn't go through sieve processing and generate an exponentially
growing loop.

> > Other random comments:
> >
> > The spec provides no way to access the "From_" line (which is the
> > "From<sp>" line with no colon that is added by some mail software.
> > While it's not part of RFC2822, and admittedly a minor concern at
> > best, that 'header' is often there, but inaccessible.  I have no
> > solution, other than perhaps making "From_" a special header name.

> we have envelope "from" for the e-mail address.  we don't have anything
> for the delivery date, but I suspect Ned is considering that for his
> "date" extension.

Actually I'm not. The current time, yes, but since the time of sieve evalaution
isn't exactly specified in terms of its relationship to final delivery it
doesn't make sense to have this as part of a general date extension. It would
at best be another, separate extension.

> > The 'variables' extension has to specify greedy/non-greedy ":matches" ;
> > this really ought to be in 3028 so that extensions can consistently
> > follow whatever rule there is; although, again, it might fail the
> > "non-substantive" test.

> I don't think this behaviour description is relevant for the main spec.
> it can not be observed without the variables extension.

Yes, exactly so. This could easily come back to bite us when we need to move to
draft.

				Ned