The F=l delivery
agent flag tells sendmail that this delivery
agent will be performing final delivery (usually on the local
machine). This notification affects
sendmail's behavior in five
ways.
First, it enables the DSN notify-on-success mechanism. That is, if the message were received via
SMTP with the envelope:
RCPT To: <user@here.us.edu> NOTIFY=SUCCESS
or via the command line with a -Nsuccess
command-line switch, sendmail (upon final local
delivery) sends back to the original sender an email message
acknowledging receipt. This mechanism should be used sparingly.
Second, the F=l delivery agent flag allows
sendmail to ignore any host part of the triple
returned by the parse rule set 0. Ordinarily, the
$@ operator must appear in the RHS for all
delivery agents selected. If no host is selected by
$@, sendmail prints this
error and bounces the message:
554 5.3.5 buildaddr: no host
But because the host is not always needed for final delivery, the
presence of the F=l delivery agent flag tells
sendmail to silently ignore a missing host part.
Third, the F=l delivery agent flag influences how
undeliverable mail will be handled. When the
ErrorMode option (ErrorMode) is
q (quiet), such mail is usually reported in the
sendmail program's
exit(2) status (Section 15.5).
With the F=l delivery agent flag set for the
envelope sender address, the undeliverable message will instead be
appended to ~/dead.letter for a local sender or
mailed back for a remote sender.
Fourth, the F=l delivery agent flag allows the
address in the From: header to be compared to the
address that sendmail would create if it was
going to add the From: header. If the two
addresses are the same, the From: header is
dropped and a new one is created. This allows
sendmail to correct for
mh(1), which sometimes fails to add full name
information.
Fifth, if the sender address selects a delivery agent with this
F=l flag set, and if the sender changed the sender
address using a -f command-line switch, and if the
sender's name is not found in the class
$=t, sendmail will issue the
following X-Authentication-Warning: header:
X-Authentication-Warning: sender set sender to new address using -f
In general, the F=l delivery agent flag should
always be specified for the local,
prog, and *file* delivery
agents.
Note that the processing of a user's
~/.forward file is no longer tied to the
local delivery agent, nor to this
F=l delivery agent flag. The ability to look in a
user's ~/.forward file is now
determined by the F=w delivery agent flag (F=w).