Complex Actions Made Simple

Beginning with V8.7 sendmail, rule-testing mode offers six simple commands that accomplish complex tasks. They are listed in Table 8-1.

Table 8-1. Available -bt / commands

Command

Version

§

Description

/canon

V8.7 and above

Section 8.5.1

Canonify a host

/mx

V8.7 and above

Section 8.5.2

Look up MX records

/map

V8.7 and above

Section 8.5.3

Look up a database item

/tryflags

V8.7 and above

Section 8.5.4

Select whom to /parse or /try

/parse

V8.7 and above

Section 8.5.5

Parse an address

/try

V8.7 and above

Section 8.5.6

Try a delivery agent

A lone / character will cause the following usage message to print:

Usage: /[canon|map|mx|parse|try|tryflags]

Anything other than the commands shown in Table 8-1 (such as /foo) will produce an error:

Unknown "/" command /foo

Canonify a Host with /canon

The /canon rule-testing command causes sendmail to look up the canonical (official, fully qualified) name of a host and print the result. The form for this command looks like this:

/canon host

If host is missing, the following usage message is printed:

Usage: /canon address

When you correctly supply the hostname as the argument, sendmail looks up the canonical name and returns the result:

> /canon icsic
getcanonname(icsic) returns icsic.icsi.berkeley.edu
>

Here, the hostname icsic was looked up. Because its canonical name was found, that name is printed following the returns. If the hostname had not been found, sendmail would have printed that same name ...

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.