$[ and $]: A Special Case
The special database-map type called
host can be declared to
modify name-server lookups with $[
and $]
. The special symbolic
name and type pair, host
and host
, is declared with the $(
and $)
operators like
this:
Khost host -a.
The -a
switch was discussed
earlier in this chapter. Here, it is sufficient to
note how it is used in resolving fully qualified
domain names with the $[
and $]
operators in the RHS of rules. Under
V8 sendmail, $[
and $]
are a special case of
the following database lookup:
$(host lookuphost $)
A successful match will ordinarily append a dot to a successfully resolved hostname.
When a host type is declared with
the K
command,
any suffix of the -a
replaces the dot as the character or
characters added.[342] For example:
$[ lookuphost $] ← found, so rewritten as lookuphost.domain. Khost host -a $[ lookuphost $] ← found, so rewritten as lookuphost.domain Khost host -a.yes $[ lookuphost $] ← found, so rewritten as lookuphost.domain.yes
The first line shows the default action of the
$[
and $]
operators in the RHS
of the rules. If lookuphost
can be fully qualified, its
fully qualified name becomes the rewritten value of
the RHS and has a dot appended. The next two lines
show the -a
with
no suffix (note that with no suffix the -a
is optional). In this
configuration file, the fully qualified name has
nothing (not even a dot) appended. The last two
lines show a configuration file with a .yes
as the suffix. This time, the fully qualified name has a ...
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.