Re: [Emailcore] Ticket #14: G.7.8. Review different size limits

Steffen Nurpmeso <steffen@sdaoden.eu> Thu, 15 July 2021 18:09 UTC

Return-Path: <steffen@sdaoden.eu>
X-Original-To: emailcore@ietfa.amsl.com
Delivered-To: emailcore@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3DCAB3A1737 for <emailcore@ietfa.amsl.com>; Thu, 15 Jul 2021 11:09:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.889
X-Spam-Level:
X-Spam-Status: No, score=-1.889 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, T_SPF_TEMPERROR=0.01, 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 WKO98-Lu9lMy for <emailcore@ietfa.amsl.com>; Thu, 15 Jul 2021 11:09:02 -0700 (PDT)
Received: from sdaoden.eu (sdaoden.eu [217.144.132.164]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 172DE3A1736 for <emailcore@ietf.org>; Thu, 15 Jul 2021 11:09:01 -0700 (PDT)
Received: from kent.sdaoden.eu (kent.sdaoden.eu [10.5.0.2]) by sdaoden.eu (Postfix) with ESMTPS id 1262616056; Thu, 15 Jul 2021 20:08:59 +0200 (CEST)
Received: by kent.sdaoden.eu (Postfix, from userid 1000) id 1731B2C0; Thu, 15 Jul 2021 20:08:57 +0200 (CEST)
Date: Thu, 15 Jul 2021 20:08:57 +0200
Author: Steffen Nurpmeso <steffen@sdaoden.eu>
From: Steffen Nurpmeso <steffen@sdaoden.eu>
To: emailcore@ietf.org
Message-ID: <20210715180857.fgWbT%steffen@sdaoden.eu>
In-Reply-To: <DFAB3FCC-AA0D-417C-B3D5-F3E2B79E0688@dukhovni.org>
References: <20210713194736.A65FB214C287@ary.qy> <DFAB3FCC-AA0D-417C-B3D5-F3E2B79E0688@dukhovni.org>
Mail-Followup-To: emailcore@ietf.org
User-Agent: s-nail v14.9.22-170-g4fc3932ea4
OpenPGP: id=EE19E1C1F2F7054F8D3954D8308964B51883A0DD; url=https://ftp.sdaoden.eu/steffen.asc; preference=signencrypt
BlahBlahBlah: Any stupid boy can crush a beetle. But all the professors in the world can make no bugs.
Archived-At: <https://mailarchive.ietf.org/arch/msg/emailcore/VOU3rvZ5ILLhl1W5BgI9-XhlgqU>
Subject: Re: [Emailcore] Ticket #14: G.7.8. Review different size limits
X-BeenThere: emailcore@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: EMAILCORE proposed working group list <emailcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/emailcore>, <mailto:emailcore-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/emailcore/>
List-Post: <mailto:emailcore@ietf.org>
List-Help: <mailto:emailcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/emailcore>, <mailto:emailcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 15 Jul 2021 18:09:08 -0000

Viktor Dukhovni wrote in
 <DFAB3FCC-AA0D-417C-B3D5-F3E2B79E0688@dukhovni.org>:
 |> On 13 Jul 2021, at 3:47 pm, John Levine <johnl@taugh.com> wrote:
 |> 
 |> Speaking of limits, how do we feel about the 1000 octet limit on line
 |> length.  It is my impression that it is often exceeded in HTML text.

Normally MIME should come into play then, and apply
a content-transfer-encoding to break it down.

The problem for (also other) simple-minded software is then to
unfold it when decoding.

 |FWIW, internally Postfix has no message content line length limit.
 |Long lines (over 2048 bytes) are stored and processed in chunks.

That is a desirable approach, congratulations.
I wish i were there already.

 |That said, lines in messages sent out via SMTP are by default folded
 |at 998+CRLF bytes:

There was that UTF-8 RFC from i think a Microsoft guy who soaped
this up to say "in modern times a character is the new byte", so
that this should now be 1000*4, at least for SMTP, not for
5322-bis, though.  Maybe too sloppily said.  (My memory says i had
an angry moment when AlpineLinux added ICU dependency to postfix
in order to support that UTF-8 extension.)

Maybe that is a weakness in the original folding algorithm, that
whitespace at the begin of follow lines is preserved.  Maybe the
(now) usual "line-continuation by escaping the linefeed with
reverse solidus" would have been the better approach, then one
could simply break were desired and it would all not matter.
Like it is now artificial whitespace may have happen in the worst
case, but --- isn't that itself so artificial that extending the
limit of 1000 looks a bit like over-engeneering?
Especially since presence of non 7-bit clean data imposes MIME
encoding, anyway?

 | http://www.postfix.org/postconf.5.html#smtp_line_length_limit
 |
 |Logical (possibly folded across multiple physical lines) *headers* longer
 |than 100KB are truncated:
 |
 | http://www.postfix.org/postconf.5.html#header_size_limit

If i recall correctly i was once stumbling over a dovecot commit
which added header truncation like that, too.

 |So it would not be a big deal if the limit were raised, but it would
 |take some years before most Postfix installations upgraded to a
 |release with a higher default limit.  If some sites override the
 |default value, they'd have to update their explicit override if too
 |small.

--steffen
|
|Der Kragenbaer,                The moon bear,
|der holt sich munter           he cheerfully and one by one
|einen nach dem anderen runter  wa.ks himself off
|(By Robert Gernhardt)