The
S= delivery agent equate specifies a rule set to
be used for processing both envelope- and header-sender addresses.
The sender's address is given in the envelope and
generally repeated in the mail message's
From: header line. The envelope
sender address is given to sendmail in one of
four ways: as a -f command-line argument; as an
SMTP MAIL FROM: command; as a From: header; or it
can be derived from the identity of the user who ran the program.
(Note that the latter two are used only during initial message
submission.) Figure 20-2 shows how the
S= rule set fits into the flow of addresses
through rule sets.
There are two forms for the S= delivery agent
equate. One is the standard form, and the other is an enhanced
alternative beginning with V8 sendmail:
S=ruleset legal for all
S=eset/hset legal beginning with V8
The first case specifies a rule set
(ruleset) that will process both recipient
and header addresses. If ruleset is zero
or if the entire S= delivery agent equate is
missing, no rule set is called.
In the second case, one rule set is specific to the envelope, and the
other is specific to headers. The envelope-specific rule is the one
to the left of the slash; the header-specific rule is the one to the
right (S=eset/hset). If
both values are missing, no sender S= processing
is done. If only one is missing, the missing value defaults to become
the other value. (See Chapter 19 for a description
of possible errors and how the new V8.7 symbolic rule set names can
be used.)
Either rule set can be specified using names or numbers or both:
S=Myset name
S=12 number
S=Myset=12 both
See Section 19.1 for a discussion of the various
legal ways rule sets can be specified.
Macros cannot be used in delivery agent rule set specifications. That
is:
S=$X illegal
will not give the expected result. Instead,
sendmail will complain about a missing rule set
specification.
When using V8 sendmail's
mc configuration, you cannot change or specify
S= rule sets. If the need arises, however, you can
copy an existing delivery agent definition, then modify it as
outlined in Section 20.3.2.