Re: [Jmap] Submission

Daniel Kahn Gillmor <dkg@fifthhorseman.net> Wed, 19 April 2017 13:51 UTC

Return-Path: <dkg@fifthhorseman.net>
X-Original-To: jmap@ietfa.amsl.com
Delivered-To: jmap@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1F80E129553 for <jmap@ietfa.amsl.com>; Wed, 19 Apr 2017 06:51:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lpa-ZlWWPAN5 for <jmap@ietfa.amsl.com>; Wed, 19 Apr 2017 06:51:34 -0700 (PDT)
Received: from che.mayfirst.org (che.mayfirst.org [162.247.75.118]) by ietfa.amsl.com (Postfix) with ESMTP id 979921274D0 for <jmap@ietf.org>; Wed, 19 Apr 2017 06:51:34 -0700 (PDT)
Received: from fifthhorseman.net (unknown [38.109.115.130]) by che.mayfirst.org (Postfix) with ESMTPSA id B60FCF997; Wed, 19 Apr 2017 09:51:33 -0400 (EDT)
Received: by fifthhorseman.net (Postfix, from userid 1000) id 1D6CE206AF; Wed, 19 Apr 2017 09:49:58 -0400 (EDT)
From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
To: Ricardo Signes <jmap.ietf@rjbs.manxome.org>, Alexey Melnikov <alexey.melnikov@isode.com>
Cc: Adrien de Croy <adrien@qbik.com>, "jmap@ietf.org" <jmap@ietf.org>, Neil Jenkins <neilj@fastmail.com>
In-Reply-To: <20170419122846.GA9764@debian>
References: <em27fa7b29-5584-44f3-aa88-086ce734ab59@bodybag> <1492585876.3100717.948941576.3168BAAE@webmail.messagingengine.com> <em325289ca-eee8-4c74-85de-cb55a2dc5085@bodybag> <0D1582C6-5843-44EC-BDD0-DB484306B066@isode.com> <20170419122846.GA9764@debian>
Date: Wed, 19 Apr 2017 09:49:54 -0400
Message-ID: <87wpag7bi5.fsf@fifthhorseman.net>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha512"; protocol="application/pgp-signature"
Archived-At: <https://mailarchive.ietf.org/arch/msg/jmap/E1UGGdmkBmbvYPa61sy3wHbTuJM>
Subject: Re: [Jmap] Submission
X-BeenThere: jmap@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: JSON Message Access Protocol <jmap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jmap>, <mailto:jmap-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jmap/>
List-Post: <mailto:jmap@ietf.org>
List-Help: <mailto:jmap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jmap>, <mailto:jmap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 19 Apr 2017 13:51:36 -0000

On Wed 2017-04-19 08:28:46 -0400, Ricardo Signes wrote:
> * Alexey Melnikov <alexey.melnikov@isode.com> [2017-04-19T05:11:42]
>> I think having parameters for envelope would be a good idea (and it would be
>> consistent with earlier discussions on Submit in IMAP.) But I am wondering if
>> we can make common cases simple for clients by not requiring the parameters.
>
> We discussed envelope parameters at IETF 98, and I hope that we do continue
> forward by making them both possible and optional.

I somehow missed that discussion at IETF 98, but i want to say that i
think that envelope parameters during submission is an important
feature.  MUAs that want their RFC5322 message to go out exactly as they
composed it, but using an arbitrary SMTP envelope should be able to
exercise that level of control via JMAP, without worrying that the
server side is going to parse, interpret, rearrange, or mangle the
standard in-message headers.

Regarding one common mismatch between SMTP envelope and RFC5322 mail
headers:

I think that encouraging an MUA to include an explicit, in-band
Bcc: header in a message that it hands off to a server for delivery is
asking for trouble.



Making the SMTP envelope parameters "optional" needs more specification.
For who are they optional?  how?  optional for JMAP servers to
implement?  optional for JMAP servers to accept?  optional for JMAP
clients to include?  optional for JMAP clients to implement?

My preference (for simplicity, omitting the explicit mechanism and just
calling it "submission"):

 * JMAP servers MUST accept SMTP envelope parameters via the submission
   mechanism

 * JMAP clients MAY decline to provide SMTP envelope parameters when
   invoking the submission mechanism, in which case the JMAP server will
   synthesize SMTP envelope parameters from the submitted message.

 * synthesis of SMTP envelope headers at submission time by the JMAP
   server should leave the message otherwise unchanged.

 * delayed send should be implemented as an explicit envelope parameter,
   not as a parsing of the in-band Date: header.  There are a range of
   reasons why an MUA might want to submit a message with a in-band
   Date: that the server finds objectionable (including server-side
   clock failure).


Regards,

        --dkg