Maximum message size All versions

The M= delivery agent equate is used to limit the total size (header and body combined) of messages handled by a delivery agent. The form for the M= delivery agent equate is:


Here, nbytes is the ASCII representation of an integer that specifies the largest size in bytes that can be transmitted. If nbytes is missing, or if the entire M= delivery agent equate is missing, nbytes internally becomes zero. If the value is zero, the limit is set by the MaxMessageSize option (MaxMessageSize on page 1047). If both are zero or undeclared, no checking is done for a maximum.

If the size of the message exceeds the limit specified, an error message is returned (bounced) that looks like this:

----- Transcript of session follows -----
 552 5.3.4 <recipient>... Message is too large;  nbytes  bytes max

Bounced mail includes a copy of only the headers. The body is specifically not bounced, even if RET=BODY is requested in the SMTP envelope. The DSN status is set to 5.3.4 (see RFC1893).

This delivery agent equate is usually used with UUCP agents, where the cost of telephone connections is of concern. It can also prove useful in mail to files, where disk space is limited.

Modify M= using an mc configuration macro

Using V8 sendmail’s mc configuration technique, the maximum message size can be changed by defining an appropriate macro. The following, for example, is one way to increase the limit on UUCP traffic to a more reasonable figure of one million:

define(`UUCP_MAILER_MAX' ...

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

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.