The sendmail program can listen for (await)
inbound connections on more than one interface, where each interface
can have one or more addresses associated with it. The
${daemon_addr} macro contains the address upon
which the daemon was listening when it accepted the inbound
connection. This macro is given the value declared by the
DaemonPortOptions=Addr option (See this section) associated with that connection each time
rule sets are called.
The format of the value stored in ${daemon_addr}
is based upon the setting of the
DaemonPortOptions=Family option (See this section). If that setting is inet
(the default) or inet6, the address in
${daemon_addr} will correspondingly look like one
of the following:
123.45.67.89 an IPv4 address
IPv6:2002:c0a8:51d2::23f4 an IPv6 address
If the DaemonPortOptions=Addr option is
undeclared, the default (with the inet
family's format) becomes 0.0.0.0
for IPv4, or (with the inet6
family's format) IPv6::: for
IPv6.
This ${daemon_addr} macro is not used in the rule
sets supplied with sendmail. It is, however,
available for your use when designing custom rule sets. Note that a
$& prefix is necessary when you reference this
macro in rules (that is, use $&{daemon_addr},
not ${daemon_addr}).
${daemon_addr} is transient. If it is defined in
the configuration file or in the command line, that definition can be
ignored by sendmail.