diff options
author | peter <peter@FreeBSD.org> | 1998-08-03 05:56:20 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1998-08-03 05:56:20 +0000 |
commit | 329949050501501c130d09efc3aee7c78c6d4f9c (patch) | |
tree | 0772be9f4640bcba9db4a0de9e79a39ad377d80b /contrib/sendmail/src/sendmail.8 | |
download | FreeBSD-src-329949050501501c130d09efc3aee7c78c6d4f9c.zip FreeBSD-src-329949050501501c130d09efc3aee7c78c6d4f9c.tar.gz |
Import sendmail-8.9.1 (slightly trimmed) onto a fresh branch under
src/contrib as per various discussions. I will copy across our changes
and then point the Makefiles across once the dust has settled..
Diffstat (limited to 'contrib/sendmail/src/sendmail.8')
-rw-r--r-- | contrib/sendmail/src/sendmail.8 | 577 |
1 files changed, 577 insertions, 0 deletions
diff --git a/contrib/sendmail/src/sendmail.8 b/contrib/sendmail/src/sendmail.8 new file mode 100644 index 0000000..5105e83 --- /dev/null +++ b/contrib/sendmail/src/sendmail.8 @@ -0,0 +1,577 @@ +.\" Copyright (c) 1998 Sendmail, Inc. All rights reserved. +.\" Copyright (c) 1983, 1997 Eric P. Allman. All rights reserved. +.\" Copyright (c) 1988, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" By using this file, you agree to the terms and conditions set +.\" forth in the LICENSE file which can be found at the top level of +.\" the sendmail distribution. +.\" +.\" +.\" @(#)sendmail.8 8.19 (Berkeley) 5/19/98 +.\" +.Dd May 19, 1998 +.Dt SENDMAIL 8 +.Os BSD 4 +.Sh NAME +.Nm sendmail +.Nd an electronic mail transport agent +.Sh SYNOPSIS +.Nm sendmail +.Op Ar flags +.Op Ar address ... +.Nm newaliases +.Nm mailq +.Op Fl v +.Sh DESCRIPTION +.Nm Sendmail +sends a message to one or more +.Em recipients , +routing the message over whatever networks +are necessary. +.Nm Sendmail +does internetwork forwarding as necessary +to deliver the message to the correct place. +.Pp +.Nm Sendmail +is not intended as a user interface routine; +other programs provide user-friendly +front ends; +.Nm sendmail +is used only to deliver pre-formatted messages. +.Pp +With no flags, +.Nm sendmail +reads its standard input +up to an end-of-file +or a line consisting only of a single dot +and sends a copy of the message found there +to all of the addresses listed. +It determines the network(s) to use +based on the syntax and contents of the addresses. +.Pp +Local addresses are looked up in a file +and aliased appropriately. +Aliasing can be prevented by preceding the address +with a backslash. +Normally the sender is not included in any alias +expansions, e.g., +if `john' sends to `group', +and `group' includes `john' in the expansion, +then the letter will not be delivered to `john'. +.Ss Parameters +.Bl -tag -width Fl +.It Fl B Ns Ar type +Set the body type to +.Ar type . +Current legal values +.Li 7BIT +or +.Li 8BITMIME . +.It Fl ba +Go into +.Tn 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. +.It Fl bd +Run as a daemon. This requires Berkeley +.Tn IPC . +.Nm Sendmail +will fork and run in background +listening on socket 25 for incoming +.Tn SMTP +connections. +This is normally run from +.Pa /etc/rc . +.It Fl bD +Same as +.Fl bd +except runs in foreground. +.It Fl bh +Print the persistent host status database. +.It Fl bH +Purge the persistent host status database. +.It Fl bi +Initialize the alias database. +.It Fl bm +Deliver mail in the usual way (default). +.It Fl bp +Print a listing of the queue. +.It Fl bs +Use the +.Tn SMTP +protocol as described in +.Tn RFC821 +on standard input and output. +This flag implies all the operations of the +.Fl ba +flag that are compatible with +.Tn SMTP . +.It Fl bt +Run in address test mode. +This mode reads addresses and shows the steps in parsing; +it is used for debugging configuration tables. +.It Fl bv +Verify names only \- do not try to collect or deliver a message. +Verify mode is normally used for validating +users or mailing lists. +.It Fl C Ns Ar file +Use alternate configuration file. +.Nm Sendmail +refuses to run as root if an alternate configuration file is specified. +.It Fl d Ns Ar X +Set debugging value to +.Ar X . +.ne 1i +.It Fl F Ns Ar fullname +Set the full name of the sender. +.It Fl f Ns Ar name +Sets the name of the ``from'' person +(i.e., the sender of the mail). +.Fl f +can only be used +by ``trusted'' users +(normally +.Em root , +.Em daemon , +and +.Em network ) +or if the person you are trying to become +is the same as the person you are. +.It Fl h Ns Ar N +Set the hop count to +.Ar 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. +.It Fl i +Ignore dots alone on lines by themselves in incoming messages. +This should be set if you are reading data from a file. +.It Fl N Ar dsn +Set delivery status notification conditions to +.Ar dsn, +which can be +.Ql never +for no notifications +or a comma separated list of the values +.Ql failure +to be notified if delivery failed, +.Ql delay +to be notified if delivery is delayed, and +.Ql success +to be notified when the message is successfully delivered. +.It Fl n +Don't do aliasing. +.It Fl O Ar option Ns = Ns Em value +Set option +.Ar option +to the specified +.Em value . +This form uses long names. +See below for more details. +.It Fl o Ns Ar x Em value +Set option +.Ar x +to the specified +.Em value . +This form uses single character names only. +The short names are not described in this manual page; +see the +.%T "Sendmail Installation and Operation Guide" +for details. +.It Fl p Ns Ar protocol +Set the name of the protocol used to receive the message. +This can be a simple protocol name such as ``UUCP'' +or a protocol and hostname, such as ``UUCP:ucbvax''. +.It Fl q Ns Bq Ar time +Processed saved messages in the queue at given intervals. +If +.Ar time +is omitted, +process the queue once. +.Xr Time +is given as a tagged number, +with +.Ql s +being seconds, +.Ql m +being minutes, +.Ql h +being hours, +.Ql d +being days, +and +.Ql w +being weeks. +For example, +.Ql \-q1h30m +or +.Ql \-q90m +would both set the timeout to one hour thirty minutes. +If +.Ar time +is specified, +.Nm sendmail +will run in background. +This option can be used safely with +.Fl bd . +.It Fl qI Ns Ar substr +Limit processed jobs to those containing +.Ar substr +as a substring of the queue id. +.It Fl qR Ns Ar substr +Limit processed jobs to those containing +.Ar substr +as a substring of one of the recipients. +.It Fl qS Ns Ar substr +Limit processed jobs to those containing +.Ar substr +as a substring of the sender. +.It Fl R Ar return +Set the amount of the message to be returned +if the message bounces. +The +.Ar return +parameter can be +.Ql full +to return the entire message or +.Ql hdrs +to return only the headers. +.It Fl r Ns Ar name +An alternate and obsolete form of the +.Fl f +flag. +.It Fl t +Read message for recipients. +To:, Cc:, and Bcc: lines will be scanned for recipient addresses. +The Bcc: line will be deleted before transmission. +.It Fl U +Initial (user) submission. +This should +.Em always +be set when called from a user agent such as +.Nm Mail +or +.Nm exmh +and +.Em never +be set when called by a network delivery agent such as +.Nm rmail . +.It Fl V Ar envid +Set the original envelope id. +This is propagated across SMTP to servers that support DSNs +and is returned in DSN-compliant error messages. +.It Fl v +Go into verbose mode. +Alias expansions will be announced, etc. +.It Fl X Ar 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. +.El +.Ss 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 +.Fl o +flag (for short names), +the +.Fl O +flag (for long names), +or in the configuration file. +This is a partial list limited to those options that are likely to be useful +on the command line +and only shows the long names; +for a complete list (and details), consult the +.%T "Sendmail Installation and Operation Guide" . +The options are: +.Bl -tag -width Fl +.It Li AliasFile= Ns Ar file +Use alternate alias file. +.It Li HoldExpensive +On mailers that are considered ``expensive'' to connect to, +don't initiate immediate connection. +This requires queueing. +.It Li CheckpointInterval= Ns Ar N +Checkpoint the queue file after every +.Ar N +successful deliveries (default 10). +This avoids excessive duplicate deliveries +when sending to long mailing lists +interrupted by system crashes. +.ne 1i +.It Li DeliveryMode= Ns Ar x +Set the delivery mode to +.Ar x . +Delivery modes are +.Ql i +for interactive (synchronous) delivery, +.Ql b +for background (asynchronous) delivery, +.Ql q +for queue only \- i.e., +actual delivery is done the next time the queue is run, and +.Ql d +for deferred \- the same as +.Ql q +except that database lookups (notably DNS and NIS lookups) are avoided. +.It Li ErrorMode= Ns Ar x +Set error processing to mode +.Ar x . +Valid modes are +.Ql m +to mail back the error message, +.Ql w +to ``write'' back the error message +(or mail it back if the sender is not logged in), +.Ql p +to print the errors on the terminal +(default), +.Ql q +to throw away error messages +(only exit status is returned), +and +.Ql e +to do special processing for the BerkNet. +If the text of the message is not mailed back +by +modes +.Ql m +or +.Ql w +and if the sender is local to this machine, +a copy of the message is appended to the file +.Pa dead.letter +in the sender's home directory. +.It Li SaveFromLine +Save +.Tn UNIX Ns \-style +From lines at the front of messages. +.It Li MaxHopCount= Ar N +The maximum number of times a message is allowed to ``hop'' +before we decide it is in a loop. +.It Li IgnoreDots +Do not take dots on a line by themselves +as a message terminator. +.It Li SendMimeErrors +Send error messages in MIME format. +If not set, the DSN (Delivery Status Notification) SMTP extension +is disabled. +.It Li ConnectionCacheTimeout= Ns Ar timeout +Set connection cache timeout. +.It Li ConnectionCacheSize= Ns Ar N +Set connection cache size. +.It Li LogLevel= Ns Ar n +The log level. +.It Li MeToo +Send to ``me'' (the sender) also if I am in an alias expansion. +.It Li CheckAliases +Validate the right hand side of aliases during a +.Xr newaliases 1 +command. +.It Li OldStyleHeaders +If set, this message may have +old style headers. +If not set, +this message is guaranteed to have new style headers +(i.e., commas instead of spaces between addresses). +If set, an adaptive algorithm is used that will correctly +determine the header format in most cases. +.It Li QueueDirectory= Ns Ar queuedir +Select the directory in which to queue messages. +.It Li StatusFile= Ns Ar file +Save statistics in the named file. +.It Li Timeout.queuereturn= Ns Ar time +Set the timeout on undelivered messages in the queue to the specified time. +After delivery has failed +(e.g., because of a host being down) +for this amount of time, +failed messages will be returned to the sender. +The default is five days. +.It Li UserDatabaseSpec= Ns Ar userdatabase +If set, a user database is consulted to get forwarding information. +You can consider this 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 +.Dv USERDB +option compiled in. +.It Li ForkEachJob +Fork each job during queue runs. +May be convenient on memory-poor machines. +.It Li SevenBitInput +Strip incoming messages to seven bits. +.It Li EightBitMode= Ns Ar mode +Set the handling of eight bit input to seven bit destinations to +.Ar mode : +.Li m +(mimefy) will convert to seven-bit MIME format, +.Li p +(pass) will pass it as eight bits (but violates protocols), +and +.Li s +(strict) will bounce the message. +.It Li MinQueueAge= Ns Ar timeout +Sets how long a job must ferment in the queue between attempts to send it. +.It Li DefaultCharSet= Ns Ar charset +Sets the default character set used to label 8-bit data +that is not otherwise labelled. +.It Li DialDelay= Ns Ar sleeptime +If opening a connection fails, +sleep for +.Ar sleeptime +seconds and try again. +Useful on dial-on-demand sites. +.It Li NoRecipientAction= Ns Ar action +Set the behaviour when there are no recipient headers (To:, Cc: or Bcc:) +in the message to +.Ar action : +.Li none +leaves the message unchanged, +.Li add-to +adds a To: header with the envelope recipients, +.Li add-apparently-to +adds an Apparently-To: header with the envelope recipients, +.Li add-bcc +adds an empty Bcc: header, and +.Li add-to-undisclosed +adds a header reading +.Ql "To: undisclosed-recipients:;" . +.It Li MaxDaemonChildren= Ns Ar N +Sets the maximum number of children that an incoming SMTP daemon +will allow to spawn at any time to +.Ar N . +.It Li ConnectionRateThrottle= Ns Ar N +Sets the maximum number of connections per second to the SMTP port to +.Ar N . +.El +.Pp +In aliases, +the first character of a name may be +a vertical bar to cause interpretation of +the rest of the name as a command +to pipe the mail to. +It may be necessary to quote the name +to keep +.Nm sendmail +from suppressing the blanks from between arguments. +For example, a common alias is: +.Pp +.Bd -literal -offset indent -compact +msgs: "|/usr/bin/msgs -s" +.Ed +.Pp +Aliases may also have the syntax +.Dq :include: Ns Ar filename +to ask +.Xr sendmail +to read the named file for a list of recipients. +For example, an alias such as: +.Pp +.Bd -literal -offset indent -compact +poets: ":include:/usr/local/lib/poets.list" +.Ed +.Pp +would read +.Pa /usr/local/lib/poets.list +for the list of addresses making up the group. +.Pp +.Nm Sendmail +returns an exit status +describing what it did. +The codes are defined in +.Aq Pa sysexits.h : +.Bl -tag -width EX_UNAVAILABLE -compact -offset indent +.It Dv EX_OK +Successful completion on all addresses. +.It Dv EX_NOUSER +User name not recognized. +.It Dv EX_UNAVAILABLE +Catchall meaning necessary resources +were not available. +.It Dv EX_SYNTAX +Syntax error in address. +.It Dv EX_SOFTWARE +Internal software error, +including bad arguments. +.It Dv EX_OSERR +Temporary operating system error, +such as +.Dq cannot fork . +.It Dv EX_NOHOST +Host name not recognized. +.It Dv EX_TEMPFAIL +Message could not be sent immediately, +but was queued. +.El +.Pp +If invoked as +.Nm newaliases , +.Nm sendmail +will rebuild the alias database. +If invoked as +.Nm mailq , +.Nm sendmail +will print the contents of the mail queue. +.Sh FILES +Except for the file +.Pa /etc/sendmail.cf +itself and the daemon process ID file, +the following pathnames are all specified in +.Pa /etc/sendmail.cf. +Thus, +these values are only approximations. +.Pp +.Bl -tag -width /usr/lib/sendmail.fc -compact +.It Pa /etc/aliases +raw data for alias names +.It Pa /etc/aliases.db +data base of alias names +.It Pa /etc/sendmail.cf +configuration file +.It Pa /etc/sendmail.hf +help file +.It Pa /var/log/sendmail.st +collected statistics +.It Pa /var/spool/mqueue/* +temp files +.El +.Sh SEE ALSO +.Xr binmail 1 , +.Xr mail 1 , +.Xr rmail 1 , +.Xr syslog 3 , +.Xr aliases 5 , +.Xr mailaddr 7 , +.Xr rc 8 ; +.Pp +DARPA +Internet Request For Comments +.%T RFC819 , +.%T RFC821 , +.%T RFC822 . +.Rs +.%T "Sendmail \- An Internetwork Mail Router" +.%V SMM +.%N \&No. 9 +.Re +.Rs +.%T "Sendmail Installation and Operation Guide" +.%V SMM +.%N \&No. 8 +.Re +.Sh HISTORY +The +.Nm +command appeared in +.Bx 4.2 . |