30.5 Internally Defined Names
V8
sendmail
internally predefines two
delivery agents for the special handling of files ( 30.5.1 The *file* and *include* Agents
The The predefined defaults for these delivery agents can be viewed with the following command: [13]
% The defaults may be overwritten by declaring these delivery agents in the configuration file. For example, the following configuration file declaration overrides the internal definition shown above, and limits the size of any mail message that is delivered to files to 1 megabyte:
M*file*, P=[FILE],
Note that any equate that does not default to zero (such as the
A similar change in definition for the m4 configuration of V8 sendmail would look like this:
LOCAL_CONFIG M*file*, P=[FILE], 30.5.2 The error Delivery Agent
All versions of
sendmail
define a special internal delivery agent
called
Beginning with V8.7, the form for using the
R... $#error $@
In general terms, the text following the
RGeorge.Washington $#error $: George Washington doesn't sleep here anymore with an error message like this:
553 <george.washington>... George Washington doesn't sleep here anymore 30.5.2.1 The $@ dsn partDelivery Status Notification (DSN, see RFC1893) provides a means for conveying the status of a message's delivery. That status is conveyed in the form of a numeric triple (so as to be easily parseable by machines). This triple is included in the "machine readable" part of bounced messages:
Each part of the triple is separated from the others with dot characters. There may be no
space around the dots.
The parts are numeric, and the meanings are as follows:
The
R... $#error
The
sendmail
program
sets its
exit
(2) value according to the
To illustrate, consider the need to reject all mail from a particular host (say evilhost.domain ). We want to reject that host for security reasons, so we might set up a rule like this:
R$* < @ evilhost.domain > $* $#error $@ 5.7.1 $: You are bad, go away
Here, the number following the
If the number following the
R$* < @ evilhost.domain > $* $#error $@
If the expression following the
R$* < @ evilhost.domain > $* $#error $@
If the string following the 30.5.3 The $: Part
Recall that the text of the error message following the
R... $#error produces this error for the address george@wash.dc.gov :
553 <george@wash.dc.gov>... george doesn't sleep here anymore
Here the 553 is an SMTP code (see RFC821). If you want a different
SMTP code issued, you may do so by prefixing the
R... $#error $: If three digits followed by a space are present as a prefix, those digits are used as the SMTP reply code when sendmail is speaking SMTP. If no digits and space prefix the text, the default SMTP reply code is 553.
A few SMTP codes that are useful with
Note that you should restrict yourself to the small set of
codes that may legally be returned to the RCPT SMTP command.
Also note that any DSN code that is specified in the
R... $#error $@ 2.1.1 $: 553 ... avoid such conflicts
Here, the DSN | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|