Gnus development mailing list
 help / color / mirror / Atom feed
From: Karl Kleinpaste <karl@jprc.com>
Cc: juerg.heim@sunweb.ch
Subject: Re: OT Length of Header-Lines?
Date: 29 Oct 1998 16:06:39 -500	[thread overview]
Message-ID: <vxkvhl3qdr4.fsf@pocari-sweat.jprc.com> (raw)
In-Reply-To: Robert Epprecht's message of "29 Oct 1998 21:13:58 +0100"

On the one hand, this is an utterly stupid question to have to answer.
Any "new" mail-serving program which imposes such severe line length
limits of that sort has, in the very first analysis, violated the
Robustness Principle.

RFC 1122, "Requirements for Hosts -- Communications Layers", p. 12:
________________

      1.2.2  Robustness Principle

         At every layer of the protocols, there is a general rule whose
         application can lead to enormous benefits in robustness and
         interoperability [IP:1]:

                "Be liberal in what you accept, and
                 conservative in what you send"
________________

This bug (and that's what it is) appears to be the flip side of the
R.P., being so conservative as to be inoperable, and non-
interoperable.  This conservatism is horribly misplaced -- messages
with line sizes > 255 bytes are routine.  Did the authors of IMail not
do any robustness testing of their own, before inflicting this on the
world at large?  This is pretty much a first order, low-grade testing
criteria, after all: "Does our software handle `big things,'
generally?"  Did no one think to ask, "How much sense does a measly
little 255-byte length limitation make in this day of gigabit trunk
lines and gigabyte discs?"

That said, the only reference to these sorts of things in the RFCs
appears to be RFC 821, "SMTP", p. 42:
________________

      4.5.3.  SIZES

	 There are several objects that have required minimum maximum
	 sizes.  That is, every implementation must be able to receive
	 objects of at least these sizes, but must not send objects
	 larger than these sizes.

	  ****************************************************
	  *                                                  *
	  *  TO THE MAXIMUM EXTENT POSSIBLE, IMPLEMENTATION  *
	  *  TECHNIQUES WHICH IMPOSE NO LIMITS ON THE LENGTH *
	  *  OF THESE OBJECTS SHOULD BE USED.                *
	  *                                                  *
	  ****************************************************

	[...]

	    text line

	       The maximum total length of a text line including the
	       <CRLF> is 1000 characters (but not counting the leading
	       dot duplicated for transparency).
________________

Text emphasis and offset in original.  And that block of text is
repeated on the next page, for additional emphasis.  Observe that RFC
821 dates from 1982 -- fully 16 years ago -- when 1000 bytes could be
considered in some contexts to be a lot of space.  Is that true any
longer today?  Of course not.

Note that 821 demands acceptance of "at least these sizes."  Not "at
most," and not "if the software is feeling especially condescendingly
service-oriented today."  Just "at least these sizes."

RFCs 1122 & 1123 have no comment, as do the POP RFCs, from my brief
perusal.  No such document discusses the acceptability of truncation,
which is to say, it's not.

Length limits are Bad, nearly everywhere they are encountered.  They
may be needed in certain circumstances, but they should be avoided
whenever possible.  Anyone who is writing such software *today* ought
to be expected to be sufficiently aware of general habits on the net
in the first place, so as not to write ridiculously length-limited
code like that.

--karl


  reply	other threads:[~1998-10-29 21:06 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1998-10-29 20:13 Robert Epprecht
1998-10-29 21:06 ` Karl Kleinpaste [this message]
1998-10-30  8:24   ` Robert Epprecht
1998-10-30 16:44   ` Jason L Tibbitts III
1998-10-30 18:20     ` Michael Welsh Duggan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=vxkvhl3qdr4.fsf@pocari-sweat.jprc.com \
    --to=karl@jprc.com \
    --cc=juerg.heim@sunweb.ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).