Macros that are given values while
sendmail
processes mail may not get the value expected. If that happens, careful hand-tracing of rule sets is required to find the fault. For example, the value in
$g
(see
Section 31.10.16, $g
) is the result of sender address rewriting and rewriting by the rule set that is specified in the
S=
equate of the selected delivery agent. Because
$g
is used to define the
From:
header line, errors in that line should be traced through errors in the
S=
equate's rule set.
Macros can have other macros as their values. The sendmail program expands macros recursively. As a consequence, unintentional loops in macro definitions can cause sendmail to appear to hang and to eventually segmentation fault and core dump.