sendmail(1M_BSD) (BSD System Compatibility) sendmail(1M_BSD)
NAME
sendmail - (BSD) send mail over the internet
SYNOPSIS
/usr/ucblib/sendmail [options] [address ...]
DESCRIPTION
sendmail sends a message to one or more people, routing the
message over whatever networks are necessary. sendmail does
internetwork forwarding as necessary to deliver the message to
the correct place.
sendmail is not intended as a user interface routine; other
programs provide user-friendly front ends; sendmail is used
only to deliver pre-formatted messages.
With no flags, sendmail reads its standard input up to an EOF,
or a line with a single dot and sends a copy of the letter
found there to all of the addresses listed. It determines the
network to use based on the syntax and contents of the
addresses.
Local addresses are looked up in the local aliases(4BSD) file,
or by using the YP name service, and aliased appropriately.
In addition, if there is a file in a recipient's home
directory, sendmail forwards a copy of each message to the
list of recipients that file contains. Aliasing can be
prevented by preceding the address with a backslash. Normally
the sender is not included in alias expansions, for example,
if `john' sends to `group', and `group' includes `john' in the
expansion, then the letter will not be delivered to `john'.
sendmail will also route mail directly to other known hosts in
a local network. The following options are available:
-Btype Set the body type to type. Current legal values are
7BIT or 8BITMIME.
-ba Go into ARPANET mode. All input lines must end with a
CR-LF, and all messages will be generated with a CR-LF
at the end. Also, the ``From:'' and ``Sender:'' fields
are examined for the name of the sender.
-bd Run as a daemon, waiting for incoming SMTP connections.
Copyright 1994 Novell, Inc. Page 1
sendmail(1M_BSD) (BSD System Compatibility) sendmail(1M_BSD)
-bi Initialize the alias database.
-bm Deliver mail in the usual way (default).
-bp Print a summary of the mail queue.
-bs Use the SMTP protocol as described in RFC 821. This
flag implies all the operations of the -ba flag that
are compatible with SMTP.
-bt Run in address test mode. This mode reads addresses and
shows the steps in parsing; it is used for debugging
configuration tables.
-bv Verify names only - do not try to collect or deliver a
message. Verify mode is normally used for validating
users or mailing lists.
-Cfile Use alternate configuration file. sendmail will not run
as root if an alternate configuration file is
specified.
-dX Set debugging value to X.
-Ffullname
Set the full name of the sender.
-fname Sets the name of the ``from'' person (that is, the
sender of the mail). -f can only be used by
``trusted'' users (who are listed in the config file).
-hN Set the hop count to N. The hop count is incremented
every time the mail is processed. When it reaches a
limit, the mail is returned with an error message, the
victim of an aliasing loop. If not specified,
Received: lines in the message are counted.
-n Do not do aliasing.
-oxvalue
Set option x to the specified value. Options are
described below.
-pprotocol
Set the name of the protocol used to receive the
message. This can be a simple protocol name such as
Copyright 1994 Novell, Inc. Page 2
sendmail(1M_BSD) (BSD System Compatibility) sendmail(1M_BSD)
UUCP or a protocol and host name such as UUCCP:ucbvax.
-q[time]
Processed saved messages in the queue at given
intervals. If time is omitted, process the queue once.
Time is given as a tagged number, with s being seconds,
m being minutes, h being hours, d being days, and w
being weeks. For example, -q1h30m or -q90m would both
set the timeout to one hour thirty minutes. If time is
specified, sendmail will run in the background. This
option can be used safely with -bd.
-rname An alternate and obsolete form of the -f flag.
-t Read message for recipients. ``To:'', ``Cc:'', and
``Bcc:'' lines will be scanned for people to send to.
The ``Bcc:'' line will be deleted before transmission.
Any addresses in the argument list will be suppressed.
-v Go into verbose mode. Alias expansions will be
announced, and so on.
-X logfile
Log all traffic in and out of mailers in the indicated
log file. This should only be used as a last resort
for debugging mailer bugs. It will log a lot of data
very quickly.
PROCESSING OPTIONS
There are also a number of processing options that may be set.
Normally these will only be used by a system administrator.
Options may be set either on the command line using the -o
flag or in the configuration file. The options are:
Afile Use alternate alias file.
bnblocks
The minimum number of free blocks needed on the spool
filesystem.
c On mailers that are considered ``expensive'' to connect
to, do not initiate immediate connection. This
requires queuing.
Copyright 1994 Novell, Inc. Page 3
sendmail(1M_BSD) (BSD System Compatibility) sendmail(1M_BSD)
C N Checkpoint the queue file after every N successful
deliveries (default is 10). This avoids excessive
duplicate deliveries when sending to long mailing lists
interrupted by system crashes.
dx Set the delivery mode to x. Delivery modes are i for
interactive (synchronous) delivery, b for background
(asynchronous) delivery, and q for queue only - that
is, actual delivery is done the next time the queue is
run.
D Run newaliases(1M_BSD) to automatically rebuild the
alias database, if necessary.
ex Set error processing to mode x. Valid modes are m to
mail back the error message, w to ``write'' back the
error message (or mail it back if the sender is not
logged in), p to print the errors on the terminal
(default), `q' to throw away error messages (only exit
status is returned), and `e' to do special processing
for the BerkNet. If the text of the message is not
mailed back by modes m or w and if the sender is local
to this machine, a copy of the message is appended to
the file dead.letter in the sender's home directory.
f Save UNIX-system-style ``From'' lines at the front of
messages.
G Match local mail names against the GECOS portion of the
password file.
gN The default group ID to use when calling mailers.
Hfile The SMTP help file.
h N The maximum number of times a message is allowed to hop
before the system decides it is in a loop.
i Do not take dots on a line by themselves as a message
terminator.
j Send error message in MIME format.
Ktimeout
Set connection cache tiemout.
Copyright 1994 Novell, Inc. Page 4
sendmail(1M_BSD) (BSD System Compatibility) sendmail(1M_BSD)
kN Set connection cache size.
Ln The log level.
l Pay attention to the Errors-To: header.
m Send to ``me'' (the sender) also if I am in an alias
expansion.
n Validate the right hand side of aliases during a
newaliases command.
o If set, this message may have old style headers. If not
set, this message is guaranteed to have new style
headers (that is, commas instead of spaces between
addresses). If set, an adaptive algorithm is used that
will correctly determine the header format in most
cases.
Qqueuedir
Select the directory in which to queue messages.
Sfile Save statistics in the named file.
s Always instantiate the queue file, even under
circumstances where it is not strictly necessary.
Ttime Set the timeout on messages in the queue to the
specified time. After sitting in the queue for this
amount of time, they will be returned to the sender.
The default is three days.
tstz,dtz
Set the name of the time zone.
Uusrdbase
If set, a user database is consulted to get forwarding
information. This can be considered an adjunct to the
aliasing mechanism, except that the database is
intended to be distributed; aliases are local to a
particular host. This may not be available if your
sendmail does not have the USERDB option compiled in.
uN Set the default user id for mailers.
Copyright 1994 Novell, Inc. Page 5
sendmail(1M_BSD) (BSD System Compatibility) sendmail(1M_BSD)
Y Fork each job during queue runs. May be convenient on
memory-poor machines.
7 Strip incoming messages to seven bits.
If the first character of the user name is a vertical bar, the
rest of the user name is used as the name of a program to pipe
the mail to. It may be necessary to quote the name of the
user to keep sendmail from suppressing the blanks from between
arguments.
sendmail returns an exit status describing what it did. The
codes are defined in sysexits.h.
EX_OK Successful completion on all addresses.
EX_NOUSER User name not recognized.
EX_UNAVAILABLE
Catchall meaning necessary resources were not
available.
EX_SYNTAX Syntax error in address.
EX_SOFTWARE Internal software error, including bad
arguments.
EX_OSERR Temporary operating system error, such as
cannot fork.
EX_NOHOST Host name not recognized.
EX_TEMPFAIL Message could not be sent immediately, but
was queued.
If invoked as newaliases, sendmail rebuilds the alias
database. If invoked as mailq, sendmail prints the contents
of the mail queue.
FILES
/etc/ucbmail/sendmail.cf
mail configuration file
/var/spool/mqueue queued mail
/etc/ucbmail/aliases
raw data for alias names
Copyright 1994 Novell, Inc. Page 6
sendmail(1M_BSD) (BSD System Compatibility) sendmail(1M_BSD)
/etc/ucbmail/aliases.db
data base of alias names
/etc/ucbmail/sendmail.hf
help file
/usr/ucbinclude/sysexits.h
exit status return codes
Alternate pathnames for the following may be specified in the
configuration file.
/usr/ucblib/sendmail.st
collected statistics
~/.forward list of recipients for forwarding
messages
REFERENCES
aliases(4BSD), biff(1BSD), mail(1), mailstats(1M_BSD),
mconnect(1M_BSD), newaliases(1M_BSD), mailq(1M_BSD)
Su, Zaw-Sing, and Jon Postel, The Domain Naming Convention for
Internet User Applications, RFC 819, Network Information
Center, SRI International, Menlo Park, Calif., August 1982
Postel, Jon, Simple Mail Transfer Protocol, RFC 821, Network
Information Center, SRI International, Menlo Park, Calif.,
August 1982
Crocker, Dave, Standard for the Format of ARPA-Internet Text
Messages, RFC 822, Network Information Center, SRI
International, Menlo Park, Calif., August 1982
Copyright 1994 Novell, Inc. Page 7