Limitheadertermination, relaxheadertermination Channel Options

Detecting the end of the message header
Message headers consist of a series of fields, each folded onto one or more lines. As a result a header consists of, at the outermost syntactic level, CRLF terminated lines that begin with either one or more whitespace characters or an alphanumeric label followed by a colon. In all cases the header is supposed to be terminated by a CRLFCRLF sequence.

A header line that doesn&#x27;t meet these syntactic requirement can arise in two different ways: (1) Something emitted a syntactically invalid header line or (2) The CRLFCRLF separator is missing and message content has been elided with the preceding header.

By default, the MTA handles syntactically invalid lines as part of the message content, terminating header processing. Setting the  channel option on an incoming (source) channel) will cause the MTA to treat such lines as part of the header and continue header processing.

RFC 822was ambiguous as to whether a line containing merely white space was allowed in a message header. (RFC 5322 clarifies this by disallowing the generation of such a line in a message header and requiring that it be accepted as part of a header.) By RFC 822 rules, it is ambiguous whether such a line should be interpreted as the end of the message header (interpreted as the "blank" line separating message header from message body), or whether it is merely additional white space from the previous header line "folded" onto a new line.

By default, the MTA only interprets a strict CRLFCRLF sequence as the end of the message header. Setting the  channel option on an incoming (source) channel) will cause the MTA to also interpret lines that contain merely white space (spaces or TABs) as terminating the message header.

is the default, though it did not exist as a distinct channel option prior to MS 7.0.5. (In earlier versions, this default behavior was selected by not setting the   channel option.)

See also:
 * Attachments and MIME processing channel options
 * Headers channel options
 * Channel options