Subject: RE: client requests ending \012

From: Edward Hibbert <[email-masked]>
Date: Wed, 26 Jul 2000 10:04:46 +0100

I disapprove of the "must not recognise" text.  I think that:
- existing implementations will ignore this text in the proven interest of
interoperability
- any new implementor who follows the RFC will become very frustrated when
it later emerges that the RFC is explicitly encouraging them to add interop
problems to their code.

There's an analogy in the X.400 world, where the spec is much tighter and
there are people who test implementations for conformance.  Even that
doesn't stop interop problems, and since it is the suppliers of the most
correct implementations who are typically more responsive to fixing problems
than the worse implementations which are violating the spec, the policy of
being liberal in what you accept has emerged there too.

I would agree with Dan that there is no consensus on this point.

Edward Hibbert
DCL.

-----Original Message-----
From: Philip Hazel [mailto:[email-masked]]
Sent: Wednesday, July 26, 2000 9:36 AM
To: Paul Hoffman / IMC
Cc: [email-masked]
Subject: RE: client requests ending \012

On Tue, 25 Jul 2000, Paul Hoffman / IMC wrote:

> The actual text from 2.3.7 reads:
> 
>     Conforming
>     implementations MUST NOT recognize or generate any other character or
>     character sequence as a line terminator.
> 
> "MUST NOT recognize" is what is being discussed here.

Quite. This seems to be a tightening up of the "be liberal in what you 
accept" philosophy. On the one hand, I would like to see this, but on 
the other hand, I don't believe you can achieve it, because it would 
require vast numbers of deployed MTAs to change more or less
simultaneously. The genie is out of the bottle, as I keep saying.

-- 
Philip Hazel            University of Cambridge Computing Service,
[email-masked]      Cambridge, England. Phone: +44 1223 334714.

---

From: Eliot Lear <[email-masked]>
Date: Wed, 26 Jul 2000 03:17:23 -0700

The problem, again, is that LF.LF causes ambiguity, and so this business
about being liberal in what you accept is not relevant.  One should not
be liberal in what one accepts at the expense of not being able to
accept legitimate text.
--
Eliot Lear
[email-masked]

---

From: Keith Moore <[email-masked]>
Date: Wed, 26 Jul 2000 09:29:09 -0400

> be liberal in what one accepts at the expense of not being able to

right.  the issue is not whether you accept LF as a command terminator
(unless you use the same routine to read commands as you do to read DATA)
the issue is whether a server accepts LF . LF as a message terminator 
for DATA.  related issues include when a client sees a LF . in a message
body - does it send LF . or LF ..?  and when a server sees LF ..foo in a
message body, does it remove the first dot?

note that detecting the use of bare LF as a command terminator may be
an effective way of identifying broken clients before the DATA phase,
where it's easier to provide meaningful error messages.

Keith