Re: [lemonade] streamlined message submission

Dave Cridland <dave@cridland.net> Sun, 05 March 2006 09:19 UTC

Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1FFpOM-0006RI-PT; Sun, 05 Mar 2006 04:19:06 -0500
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1FFpOL-0006Of-E5 for lemonade@ietf.org; Sun, 05 Mar 2006 04:19:05 -0500
Received: from pythagoras.zen.co.uk ([212.23.3.140]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1FFpOG-0002DO-Su for lemonade@ietf.org; Sun, 05 Mar 2006 04:19:05 -0500
Received: from [217.155.137.60] (helo=turner.dave.cridland.net) by pythagoras.zen.co.uk with esmtp (Exim 4.30) id 1FFpOF-0005LK-H0 for lemonade@ietf.org; Sun, 05 Mar 2006 09:18:59 +0000
Received: from localhost (localhost.localdomain [127.0.0.1]) by turner.dave.cridland.net (Postfix) with ESMTP id B2FC3498003 for <lemonade@ietf.org>; Sun, 5 Mar 2006 09:19:28 +0000 (GMT)
Received: from turner.dave.cridland.net ([127.0.0.1]) by localhost (turner.dave.cridland.net [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 22730-02 for <lemonade@ietf.org>; Sun, 5 Mar 2006 09:19:19 +0000 (GMT)
Received: from peirce.dave.cridland.net (unknown [IPv6:2001:4bd0:2029:0:2e0:81ff:fe29:d16a]) by turner.dave.cridland.net (Postfix) with ESMTP id B9D4C498002 for <lemonade@ietf.org>; Sun, 5 Mar 2006 09:19:17 +0000 (GMT)
Date: Sun, 05 Mar 2006 09:18:47 +0000
Subject: Re: [lemonade] streamlined message submission
References: <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <DFFAA59A7AAA0F1946ED42D8@[10.1.110.5]> <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <21533.1140619429.225276@peirce.dave.cridland.net> <01LZ9FNBLMAS00009C@mauve.mrochek.com> <Pine.LNX.4.64.0602221744440.24112@hermes-2.csi.cam.ac.uk> <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <01LZ8M8NO8S800009C@mauve.mrochek.com> <Pine.LNX.4.64.0602221332430.24112@hermes-2.csi.cam.ac.uk> <01LZ9CVRUSC000009C@mauve.mrochek.com> <43FC8731.3080505@teamware.com> <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <21533.1140619429.225276@peirce.dave.cridland.net> <Pine.LNX.4.64.0602221459460.24112@hermes-2.csi.cam.ac.uk> <22667.1140657288.257701@peirce.dave.cridland.net> <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <21533.1140619429.225276@peirce.dave.cridland.net> <Pine.LNX.4.64.0602221459460.24112@hermes-2.csi.cam.ac.uk> <21533.1140619429.225276@peirce.dave.cridland.net> <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <01LZ8M8NO8S800009C@mauve.mrochek.com> <Pine.LNX.4.64.0602221332430.24112@hermes-2.csi.cam.ac.uk> <01LZ9CVRUSC000009C@mauve.mrochek.com> <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <01LZ8M8NO8S800009C@mauve.mrochek.com> <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <21533.1140619429.225276@peirce.dave.cridland.net> <01LZ9FNBLMAS00009C@mauve.mrochek.com> <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <01LZ8M8NO8S800009C@mauve.mrochek.com> <Pine.LNX.4.64.0602221332430.24112@hermes-2.csi.cam.ac.uk> <Pine.LNX.4.64.0602220017450.24112@hermes-2.csi.cam.ac.uk> <p07000c39c02e9fd5ca8a@[129.46.172.15]>
In-Reply-To: <p07000c39c02e9fd5ca8a@[129.46.172.15]>
MIME-Version: 1.0
Message-Id: <14379.1141550327.734683@peirce.dave.cridland.net>
From: Dave Cridland <dave@cridland.net>
To: Enhancements to Internet email to support diverse service enivronments <lemonade@ietf.org>
Content-Type: text/plain; charset="us-ascii"; format="flowed"
X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at dave.cridland.net
X-Originating-Pythagoras-IP: [217.155.137.60]
X-Spam-Score: 0.1 (/)
X-Scan-Signature: b4a0a5f5992e2a4954405484e7717d8c
X-BeenThere: lemonade@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Enhancements to Internet email to support diverse service enivronments <lemonade.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/lemonade>, <mailto:lemonade-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:lemonade@ietf.org>
List-Help: <mailto:lemonade-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/lemonade>, <mailto:lemonade-request@ietf.org?subject=subscribe>
Errors-To: lemonade-bounces@ietf.org

On Sat Mar  4 02:33:49 2006, Randall Gellens wrote:
> At 5:09 PM -0800 2/21/06, Ned Freed wrote:
>>   > 
>> http://www.cus.cam.ac.uk/~fanf2/hermes/doc/antiforgery/draft-fanf-smtp-rcpthdr.txt
> 
> 
> 
>>  (0) How are malformed or unparseable To:/Cc:/Bcc: fields supposed 
>> to be
>>      handled? There's no place to report such an error in the 
>> dialogue and
>>      a DSN isn't designed to report such issues.
> 
>>  (1) How are problems with specific recipient addresses supposed 
>> to be handled?
> 
> If we do proceed with this draft, I'd suggest that malformed and 
> unparseable address headers, as well as errors for a specific 
> address, be handled by a new extended SMTP response code and 
> including the bad address (or the entire header if it is bad) in 
> square brackets in the text.  This would have to be a response 
> after end of data, of course.
> 
> It's still a lot tricker for clients to get this right than an 
> immediate error after the specific RCPT TO, but it's much, much, 
> much better than accepting the message and generating a DSN.
> 
> 
Chris Newman briefly proposed doing it the other way around, that is, 
generating the headers from the envelope.

I've written this up as 
http://dave.cridland.net/draft-cridland-esmtp-headergen-pre.txt with 
XML source at 
http://svn.dave.cridland.net/svn/ietf-drafts/draft-cridland-esmtp-headergen.xml

(This is very rough thus far, just aimed at being a talking point. In 
particular, as I write this, I note I've not yet seperated out 
informative and normative references at all.)

Given the availability of PIPELINING, this seems like a better and 
easier way to go.

> The client would pipeline QUIT and check the responses after the 
> connection closes, right?  I suppose we'd want an extension that 
> said "if any RCPT is bad then please ignore any subsequent ones 
> because I don't really want it sent even though it might seem so 
> but that is just because I am pipelining everything".  It would be 
> the moral equivalent of the compiler flags to treat all warnings as 
> errors. The client would include this new keyword on MAIL FROM 
> (maybe ABORTONBADRCPT), the server would generate usual responses 
> to every RCPT TO, then if any were bad, it would send a failure 
> after end-of-data.
> 
> 
It's actually saying "If any RCPT is bad then I'm going to waste a 
stackload of data transmission, and therefore cost and battery life". 
I think if you want this behaviour, you have to introduce a 
post-envelope sync point - ie, you send the envelope, and examine 
responses to decide whether you wish to continue.

Dave.
-- 
           You see things; and you say "Why?"
   But I dream things that never were; and I say "Why not?"
    - George Bernard Shaw

_______________________________________________
lemonade mailing list
lemonade@ietf.org
https://www1.ietf.org/mailman/listinfo/lemonade