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


sendmail

sendmailSearch this book
Previous: 8.1 A Fictional Network Chapter 8
Addresses and Rules
Next: 8.3 Rule Sets
 

8.2 Why Rules?

Rules in a sendmail.cf file are used to rewrite (modify) mail addresses, to detect errors in addressing, and to select mail delivery agents. Addresses need to be rewritten because they can be specified in many ways, yet are required to be in particular forms by delivery agents. To illustrate, consider Figure 8.6 and the address

friend@uuhost

Figure 8.6: Rules modify addresses, detect errors, and select delivery agents

Figure 8.6

If the machine uuhost were connected to yours over a dial-up line, mail would likely be sent by UUCP, which requires addresses to be expressed in UUCP form:

uuhost!friend

Another role of sendmail.cf rules is to detect (and reject) errors on the machine from which the mail originated. This prevents them from propagating over the network. Mail to an address without a username is one such error:

@neighbor

It is better to detect this kind of error as early as possible, rather than having the host neighbor reject it.

Delivery agents are the means used by sendmail to actually transmit or deliver mail messages. Rules examine the address of each envelope recipient and select the appropriate delivery agent. For example,

root@here.us.edu

Here, rules detect that here.us.edu is the name of the local machine and then select the local delivery agent to perform final delivery to the user root 's system mailbox.

In the previous two chapters you were introduced to delivery agent and macro definitions. In this chapter we will begin our coverage of rule sets: the way those rule sets process addresses.