home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam  


Previous Section Next Section

F=l (lowercase L)

Agent performs local (final) delivery All versions

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.[32] That is, if the message were received via SMTP with the envelope:

[32] This replaces the Return-Receipt-To: header line.

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).

    Previous Section Next Section