The E= delivery agent equate specifies the end-of-line character or characters. Those characters are generated by sendmail for outgoing messages and are recognized by sendmail for incoming messages.

The end-of-line characters are defined with the E= delivery agent equate as backslash-escaped control characters, such as:


Prior to V8.8 the default end-of-line string, if the E= field was missing, was the C-language newline character, \n.[12] Beginning with V8.8 sendmail, the default is \n for all except delivery agents that speak SMTP, in which case the default is \r\n.

In general, delivery agents that speak SMTP or LMTP (those that lack a $u in the A= argument array) should have their end-of-line field set to E=\r\n (for a carriage-return/line-feed pair).[13] Delivery agents that do not speak SMTP (those that include a $u in the A= argument array) should have their end-of-line field set to E=\n (for a lone line-feed character).

In using V8 sendmail’s mc configuration, the value given to E= cannot be easily changed. It is supplied to the MAILER('smtp') delivery agents as \r\n, but it is left as the default \n for all others. If you need to change this value at the mc configuration level, you must first copy an existing delivery agent definition, then modify it as outlined in Section 20.3.2.

If the E= delivery agent equate’s argument is missing, the following error message is printed and the E= becomes undefined:

mailer agent_name: null end-of-line string


Get Sendmail, 3rd Edition now with O’Reilly online learning.

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