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


Previous Section Next Section

-s

Specify the sender in the command line vacation command-line switch

The vacation program, when run from inside your ~/.forward file, figures out the addresses of the sender by looking at the five-character "From " header (for the envelope sender). But there are other ways to run vacation when the envelope sender address should instead be passed on the command line.

Consider the following delivery agent declaration (Section 20.1) in which arbitrary users can have mail delivered via the vacation program:[13]

[13] This delivery agent declaration is highly abbreviated (lacking an F=, for example) and should not be used as is.

Mvacation, P=/usr/ucb/vacation, A=vacation -s $f $u

Here, the vacation program is run whenever this delivery agent is selected by rule sets. When it is run, the recipient's address is passed to it in the $u sendmail macro ($u). The sender's address is passed to it with the -s command-line switch and the $f sendmail macro ($f).

This -s command-line switch is useful whenever vacation is run from somewhere other than the command line or your ~/.forward file. If the vacation program is run from inside your ~/.procmail.rc file or from within your ~/.maildelivery file, this -s command-line switch can also be handy.

The sender address must follow the -s. If it is missing, the recipient address will become the sender address and vacation will exit without doing anything. If the sender address is not a valid address, the message mailed by vacation will bounce.

    Previous Section Next Section