DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
SMM:08-78
Sendmail Installation and Operation Guide
Version level five configuration files change the default definition of $w to be just the first
component of the hostname.
Version level six configuration files change many of the local processing options (such as
aliasing and matching the beginning of the address for `|' characters) to be mailer flags; this allows
fine-grained control over the special local processing. Level six configuration files may also use
long option names. The ColonOkInAddr option (to allow colons in the local-part of addresses)
defaults on for lower numbered configuration files; the configuration file requires some additional
intelligence to properly handle the RFC 822 group construct.
Version level sev en configuration files used new option names to replace old macros ($e
became SmtpGreetingMessage, $l became UnixFromLine, and $o became OperatorChars.
Also, prior to version seven, the F=q flag (use 250 instead of 252 return value for
SMTP VRFY
com-
mands) was assumed.
Version level eight configuration files allow $# on the left hand side of ruleset lines.
Version level nine configuration files allow parentheses in rulesets, i.e. they are not treated as
comments and hence removed.
Version level ten configuration files allow queue group definitions.
The V line may have an optional /vendor to indicate that this configuration file uses modifica-
tions specific to a particular vendor
22
. You may use "/Berkeley" to emphasize that this configura-
tion file uses the Berkeley dialect of sendmail.
5.9. K -- Key File Declaration
Special maps can be defined using the line:
Kmapname mapclass arguments
The mapname is the handle by which this map is referenced in the rewriting rules. The mapclass is
the name of a type of map; these are compiled in to sendmail. The arguments are interpreted
depending on the class; typically, there would be a single argument naming the file containing the
map.
Maps are referenced using the syntax:
$( map key $@ arguments $: default $)
where either or both of the arguments or default portion may be omitted. The $@ arguments may
appear more than once. The indicated key and arguments are passed to the appropriate mapping
function. If it returns a value, it replaces the input. If it does not return a value and the default is
specified, the default replaces the input. Otherwise, the input is unchanged.
The arguments are passed to the map for arbitrary use. Most map classes can interpolate
these arguments into their values using the syntax "%n" (where n is a digit) to indicate the corre-
sponding argument. Argument "%0" indicates the database key. For example, the rule
R$- ! $+
$: $(uucp $1 $@ $2 $: $2 @ $1 . UUCP $)
Looks up the UUCP name in a (user defined) UUCP map; if not found it turns it into ".UUCP"
form. The database might contain records like:
decvax %1@%0.DEC.COM
research %1@%0.ATT.COM
Note that default clauses never do this mapping.
22
And of course, vendors are encouraged to add themselves to the list of recognized vendors by editing the routine setvendor in
conf.c. Please send e-mail to sendmail@Sendmail.ORG to register your vendor dialect.