The smallest possible configuration file contains absolutely nothing. Create an empty configuration file by copying /dev/null to it:
%
cp /dev/null client.cf
This is the configuration file that we will continue to develop throughout this tutorial. We call it client.cf to avoid the possibility of overwriting the system sendmail.cf file.
Now run sendmail to test the validity of this new file:
%
./sendmail -Cclient.cf -bt < /dev/null
%
The -C
command line switch tells sendmail to use
your (empty) configuration file in place of the system configuration
file. The -bt
switch tells sendmail to run in
rule-testing mode (which we will use frequently in the
chapters to follow).
Notice that sendmail reads your empty
configuration file, runs, and exits without complaint.
Also notice
that you can now begin to run the version of sendmail that you
compiled in
Chapter 2, Have a V8.
You couldn't run it before because you lacked a configuration file,
but now you have one (although it contains nothing useful).
To prevent older versions of sendmail
from breaking when reading new style
sendmail.cf files, a V
(for version) command was
introduced beginning with V8.1.
The form for the version command looks like this:
V7
Edit the client.cf file and add this single line.
The V
must begin the line. The version number that follows
must be 7 to enable all the new features of
V8.8 sendmail.cf.
The number 7 indicates
that the syntax of the sendmail.cf file has undergone seven major
changes over the years, the seventh being the current and most
recent. The meaning of each version is detailed in Section 27.5, "The V Configuration Command".
Comments can help other people to understand
your configuration file.
They can also remind you about something you might have done months ago. They slow down
sendmail by only the tiniest amount, so don't be afraid to use them.
As was mentioned earlier,
when the #
character begins a line in the sendmail.cf file,
that entire line is treated as a comment and
ignored. For example,
the entire following line is ignored by the sendmail program:
# This is a comment
Besides beginning a line, comments can also follow commands. [2] That is,
[2] Before V8 sendmail, comments could follow only three commands:
S
(rule set),P
(priority), andR
(rewriting rule).
V7 # this is another comment
Add some comments to your client.cf file. It should look something like this:
# This is a comment V7 # this is another comment
The sendmail program will still read this file without complaint:
%
./sendmail -Cclient.cf -bt < /dev/null
%