-d60.1

Trace database map lookups inside rewrite( ) Debug command-line switch

Rules defined by the R configuration command are rewritten by sendmail’s internal rewrite( ) subroutine. The $[ and $( lookup operators cause sendmail to look up keys in database maps.

If sendmail is running in deferred mode (DeliveryMode on page 1004), it might skip some database map lookups because they might take time to complete (as with DNS, NIS, etc.). The -d60.1 (a.k.a. -d60) debugging switch causes sendmail to print that it is skipping the lookup:

map_lookup(dbtype, key) => DEFERRED

Here, dbtype is the database map type, such as dequote or host. The key is the information being looked up.

If running in something other than deferred mode, sendmail performs the lookup. If the lookup fails (if key is not found), sendmail prints:

map_lookup(dbtype, key) => NOT FOUND (stat)

Here, stat is the number of the error that caused the failure. If it is 0, the lookup failed merely because the key was not found. Otherwise, it corresponds to the error numbers in <sysexits.h>. Then, if stat is the special value 75 (for EX_TEMPFAIL), sendmail also prints:

map_lookup(dbtype, key) tempfail: errno=err

Here, err is the error number that corresponds to the errors listed in <errno.h>.

If the key is successfully found, sendmail prints:

map_lookup(dbtype, key) => replacement  value here (stat)

Note that the replacement value will be whatever value was defined by the -a database switch (-a on page 887) when the K configuration command ...

Get sendmail, 4th 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.