Re: [ietf-smtp] Is this a valid Message-ID header ?

John C Klensin <john-ietf@jck.com> Fri, 06 March 2020 05:31 UTC

Return-Path: <john-ietf@jck.com>
X-Original-To: ietf-smtp@ietfa.amsl.com
Delivered-To: ietf-smtp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3D2EF3A145F for <ietf-smtp@ietfa.amsl.com>; Thu, 5 Mar 2020 21:31:32 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_NONE=0.001, 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 RDOsopvGrdgg for <ietf-smtp@ietfa.amsl.com>; Thu, 5 Mar 2020 21:31:30 -0800 (PST)
Received: from bsa2.jck.com (bsa2.jck.com [70.88.254.51]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A506A3A145E for <ietf-smtp@ietf.org>; Thu, 5 Mar 2020 21:31:30 -0800 (PST)
Received: from [198.252.137.10] (helo=PSB) by bsa2.jck.com with esmtp (Exim 4.82 (FreeBSD)) (envelope-from <john-ietf@jck.com>) id 1jA5a1-0004T8-1P; Fri, 06 Mar 2020 00:31:25 -0500
Date: Fri, 06 Mar 2020 00:31:19 -0500
From: John C Klensin <john-ietf@jck.com>
To: John R Levine <johnl@taugh.com>, Mark Andrews <marka@isc.org>
cc: ietf-smtp@ietf.org
Message-ID: <961C7C4EA24A110554D88BFA@PSB>
In-Reply-To: <alpine.OSX.2.22.407.2003052339010.19976@ary.qy>
References: <20200305043414.0E7C515740C2@ary.qy> <87055.1583465260@turing-police> <9DF11014-4C79-49DE-B17E-12B87F2FF17C@isc.org> <alpine.OSX.2.22.407.2003052339010.19976@ary.qy>
X-Mailer: Mulberry/4.0.8 (Win32)
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
X-SA-Exim-Connect-IP: 198.252.137.10
X-SA-Exim-Mail-From: john-ietf@jck.com
X-SA-Exim-Scanned: No (on bsa2.jck.com); SAEximRunCond expanded to false
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf-smtp/luTkRWzA5SfTR3EoNRj08MksZ8w>
Subject: Re: [ietf-smtp] Is this a valid Message-ID header ?
X-BeenThere: ietf-smtp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Discussion of issues related to Simple Mail Transfer Protocol \(SMTP\) \[RFC 821, RFC 2821, RFC 5321\]" <ietf-smtp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf-smtp>, <mailto:ietf-smtp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf-smtp/>
List-Post: <mailto:ietf-smtp@ietf.org>
List-Help: <mailto:ietf-smtp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf-smtp>, <mailto:ietf-smtp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 06 Mar 2020 05:31:32 -0000


--On Thursday, March 5, 2020 23:40 -0500 John R Levine
<johnl@taugh.com> wrote:

> On Fri, 6 Mar 2020, Mark Andrews wrote:
>> Conversion of all ASCII headers to utf-8 mime encoded should
>> be banned. Apart from testing encoding/decoding it serves no
>> useful purpose and if you want to perform such testing you
>> can always add a non ASCII character.  MUA's that do this
>> are deliberately breaking interoperability with old MUAs.
> 
> The spec is pretty clear where you can have MIME entities and
> where you can't.  You can't have them in Message-ID's,
> References, or the actual address in To, From, Cc, etc.

In the interest of clarity, what you are referring to as "MIME
entities" are encoded words as specified in RFC 2231.  Right?

And because encoded words are not permitted in Message-IDs or
the other fields you mention, those fields must conform to the
specified syntax without decoding.   If they don't, it is pretty
much up to the receiving system what to do about it.  I suppose
that could including treating the strings as encoded works and
see where decoding takes one, but that would be so far beyond
the standard that questions about the decoded (UTF-8 or
otherwise) field looks like are really not relevant here: such a
string is either valid or invalid without decoding and, as far
as the standard is concerned, that is the end of it.

    john