Re: [Evolution] Corrupted mail send to too many correspondant
- From: Enrique Perez-Terron <enrique perez-terron norway online no>
- To: evolution lists ximian com
- Subject: Re: [Evolution] Corrupted mail send to too many correspondant
- Date: Tue, 06 Jul 2004 23:41:49 +0200
On Tue, 2004-07-06 at 19:04, Olivier DUGEON wrote:
- Is there something in the RFC which tell that the "To:" or "Cc:"
field couldn't be larger than 1024 char. ?
The RFC-821 specifies:
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).
recipients buffer
The maximum total number of recipients that must be
buffered is 100 recipients.
These numbers are minimum maximums, i.e., every mail handling agent must
be able to handle commands and messages complying to these limits, but
implementors are recommended to allow for more.
The RFC-822 specifies:
3.1.1. LONG HEADER FIELDS
Each header field can be viewed as a single, logical line of
ASCII characters, comprising a field-name and a field-body.
For convenience, the field-body portion of this conceptual
entity can be split into a multiple-line representation; this
is called "folding". The general rule is that wherever there
may be linear-white-space (NOT simply LWSP-chars), a CRLF
immediately followed by AT LEAST one LWSP-char may instead be
inserted.
(in this text, "LWSP-chars" mean spaces and (horizontal-)tabs.
"linear-white-space" means any sequence of CRLF, space, and tab
characters where each CRLF is immediately followed by a space or tab.)
It also specifies:
3.4.8. FOLDING LONG HEADER FIELDS
Each header field may be represented on exactly one line con-
sisting of the name of the field and its body, and terminated
by a CRLF; this is what the parser sees. For readability, the
field-body portion of long header fields may be "folded" onto
multiple lines of the actual field. "Long" is commonly inter-
preted to mean greater than 65 or 72 characters. The former
length serves as a limit, when the message is to be viewed on
most simple terminals which use simple display software; how-
ever, the limit is not imposed by this standard.
The newer RFC-2822 says:
2.1.1. Line Length Limits
There are two limits that this standard places on the number of
characters in a line. Each line of characters MUST be no more than
998 characters, and SHOULD be no more than 78 characters, excluding
the CRLF.
I do not know if Evolution does this right. I would be surprised,
though, if it does not.
When parsing addresses, implementors likely want to unfold long headers
before identifying the individual addresses, as it is legal to fold a
header in the middle of an address. Quite likely some implementors have
chosen to allocate a single large buffer into which each header is
copied as it is unfolded, and then the size of the buffer becomes a hard
limit on the size of the _unfolded_ header.
Given the existence of such agents, perhaps Evolution should have a
mechanism to send several independent messages when the number of
recipients is large enough. As shown above, such a mechanism is needed
anyway if the number of recipients is above 100.
Regards,
Enrique
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]