MaxMimeHeaderLength

Maximum MIME header length V8.10 and later

MIME headers are special, in that they can appear both in the header portion of a message and in the body of the message. Such headers include MIME-Version: (which can appear only in the header portion), Content-Type: (which can appear in both), and Content-Disposition: (which appears in both). All such headers have a name (the part to the left of the colon) and a field (the part to the right of the colon). The length of a MIME header is the combined length of these two parts.

In addition, some MIME headers can also have parameters following the value. For example:

Content-Type: image/gif; name="filename.gif"

Here, the value is everything up to and including the first semicolon. Each semicolon-delimited item that follows that value is a parameter. The following, for example, has one value and two parameters:

Content-Type: multipart/mixed;
        charset="Windows-1252";
        boundary="----=_NextPart_000_00DC_01BEAC82.35D91E20"

Certain kinds of MUA attacks can be based on overly long MIME headers. To prevent the success of such attacks, V8.10 sendmail has introduced the MaxMimeHeaderLength option. It sets the maximum length for both MIME headers and MIME header parameters. The forms of the MaxMimeHeaderLength option are as follows:

O MaxMimeHeaderLength=hdr/paramconfiguration file (V8.10 and
later)
-OMaxMimeHeaderLength=hdr/paramcommand line (V8.10 and later)
define(`confMAX_MIME_HEADER_LENGTH',hdr/param)   ← mc configuration (V8.10 ...

Get sendmail, 4th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.