Name

$={persistentMacros}

Synopsis

When a message is first accepted, sendmail usually queues it first,[7] then tries to deliver it. The qf file contains all the envelope information about a message, including information specific to the sendmail delivery process, and several macros whose values are important to preserve between queue runs. This {persistentMacros} class holds the names of those important macros.

When V8.10 sendmail starts to run, it adds to the {persistentMacros} class a list of five macro names:

  • The $r macro ($r) holds the protocol used to receive a message when it was first accepted.

  • The $s macro ($s) holds the hostname of the sender’s machine.

  • The $_ macro ($_) holds the validated hostname and address, RFC1413-validation (if available), and IP source route information associated with the incoming SMTP connection.

  • The ${if_addr} macro (${if_addr}) holds the IP address of the interface on which the message was received.

  • The ${daemon_flags} macro (${daemon_flags}) holds the flags specified by the DaemonPortOptions option (DaemonPortOptions).

To add macro names to this class, omit the leading dollar symbol. For example, you might add the macro ${MyMacro} like this:

LOCAL_CONFIG
C{persistentMacros} {MyMacro}

However, you are strongly advised not to add any macros to this class. Should you feel the need to do so, take enough time to fully examine how that macro is used in rule sets, and how it can be used internally by sendmail. Then cautiously test and observe to be certain ...

Get Sendmail, 3rd 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.