Re: [ietf-smtp] Stray <LF> in the middle of messages

Ned Freed <> Wed, 10 June 2020 20:07 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 6226E3A1140 for <>; Wed, 10 Jun 2020 13:07:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id R_8MYaB9dVE3 for <>; Wed, 10 Jun 2020 13:07:16 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 06E793A113F for <>; Wed, 10 Jun 2020 13:07:15 -0700 (PDT)
Received: from by (PMDF V6.1-1 #35243) id <> for; Wed, 10 Jun 2020 13:02:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;; s=201712; t=1591819332; bh=Nq2WqgYWQHZW+sQzSo2CbJYfX1bV2xrYzBOOy9Duq9g=; h=Cc:Date:From:Subject:In-reply-to:References:To:From; b=O9LFR7woN+0ZFLhfn4LZtpxTuLORxacfDc54jvS4T7wSg9eul7aZsBez5gbDhHwOc YNB7Guzhb/0JjzYGFTQg/He+6zDweXQbgx1b2NJA+Ukrv6wU2a18jzubqCBFP3KVod qIt1Oj7uNGVO1W1Mc2VN6RgBdq83zzshuhpUbQtE=
MIME-version: 1.0
Content-transfer-encoding: 7BIT
Content-type: TEXT/PLAIN; CHARSET=us-ascii
Received: from by (PMDF V6.1-1 #35243) id <>; Wed, 10 Jun 2020 13:02:10 -0700 (PDT)
Message-id: <>
Date: Wed, 10 Jun 2020 12:19:01 -0700 (PDT)
From: Ned Freed <>
In-reply-to: "Your message dated Wed, 10 Jun 2020 14:12:47 -0400" <20200610181247.676111A5C823@ary.qy>
References: <> <20200610181247.676111A5C823@ary.qy>
To: John Levine <>
Archived-At: <>
Subject: Re: [ietf-smtp] Stray <LF> in the middle of messages
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\]" <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 10 Jun 2020 20:07:17 -0000

On the TOPS-10 side, the use of CRLF goes back to the PDP-6 Monitor OS. (Before
that I have no idea.) This takes us back to 1965. Except that it wasn't
precisely CRLF - in some cases you were allowed to omit the CR on the second
and subsequent blank lines.

I think this died out fairly quickly, but I recall seeing code to accomodate it
in some CUSP (commonly used system program) or other.

AFAIK Tenex copied TOPS-10 in this area.


> In article <> you write:
> >CR takes you back to the start of the current line, and LF takes you to
> >the next line (at the current position), ...

> Except when it doesn't. In 1969 when people at Bell Labs were writing
> the early versions of Unix, they had a lot of the otherwise obscure
> Model 37 Teletype, which had upper and lower case and where the 012
> character was a new line (NL), moving the print position to the
> beginning of the next line. It had unusually sophisticated buffering
> for the era and didn't need any delay characters. Teletype was an
> AT&T subsidiary so it's not surprising that the Labs would get early
> versions of their products.

> Other places the models 33 and 35 were the most popular terminals,
> both of which needed CR/LF to print properly. But as Dave noted, we
> had to pick some line end convention and given how common CR/LF was at
> the time, it was as good a convention as any.

> Even the earliest Unix systems had tty drivers that could adapt to
> model 33 or 35, adding CR in front of NL and providing escapes to
> enter lower case letters and other characters not on the keyboard.

> _______________________________________________
> ietf-smtp mailing list