Sendmail Installation and Operation Guide
SMM:08-51
${rcpt_mailer}
The mailer from the resolved triple of the address given for the
SMTP RCPT
command.
Defined in the SMTP server only after a RCPT command.
${server_addr}
The address of the server of the current outgoing SMTP connection. For LMTP delivery the
macro is set to the name of the mailer.
${server_name}
The name of the server of the current outgoing SMTP or LMTP connection.
${time}
The output of the time(3) function, i.e., the number of seconds since 0 hours, 0 minutes, 0 sec-
onds, January 1, 1970, Coordinated Universal Time (UTC).
${tls_version}
The TLS/SSL version used for the connection, e.g., TLSv1, SSLv3, SSLv2; defined after
STARTTLS has been used.
${total_rate}
The total number of incoming connections over the time interval specified by Connection-
RateWindowSize.
${verify}
The result of the verification of the presented cert; only defined after STARTTLS has been
used. Possible values are:
OK verification
succeeded.
NO no cert
presented.
NOT
no cert requested.
FAIL
cert presented but could not be verified,
e.g., the signing CA is missing.
NONE
STARTTLS has not been performed.
TEMP temporary error
occurred.
PROT OCOL
some protocol error occurred.
SOFTWARE STARTTLS
handshake failed,
which is a fatal error for this session,
the e-mail will be queued.
There are three types of dates that can be used. The $a and $b macros are in RFC 822 for-
mat; $a is the time as extracted from the "Date:" line of the message (if there was one), and $b is
the current date and time (used for postmarks). If no "Date:" line is found in the incoming message,
$a
is set to the current time also. The $d macro is equivalent to the $b macro in UNIX (ctime) for-
mat.
The macros $w, $j, and $m are set to the identity of this host. Sendmail tries to find the fully
qualified name of the host if at all possible; it does this by calling gethostname(2) to get the current
hostname and then passing that to gethostbyname(3) which is supposed to return the canonical ver-
sion of that host name.
17
Assuming this is successful, $j is set to the fully qualified name and $m is
set to the domain part of the name (everything after the first dot). The $w macro is set to the first
word (everything before the first dot) if you have a lev el 5 or higher configuration file; otherwise, it
is set to the same value as $j. If the canonification is not successful, it is imperative that the config
file set $j to the fully qualified domain name
18
.
17
For example, on some systems gethostname might return "foo" which would be mapped to "foo.bar.com" by gethostbyname.
18
Older versions of sendmail didn't pre-define $j at all, so up until 8.6, config files always had to define $j.