1 .\" Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers.
2 .\" All rights reserved.
3 .\" Copyright (c) 1983, 1997 Eric P. Allman. All rights reserved.
4 .\" Copyright (c) 1988, 1991, 1993
5 .\" The Regents of the University of California. All rights reserved.
7 .\" By using this file, you agree to the terms and conditions set
8 .\" forth in the LICENSE file which can be found at the top level of
9 .\" the sendmail distribution.
12 .\" $Id: sendmail.8,v 8.36.8.2 2000/09/07 21:14:00 ca Exp $
14 .TH SENDMAIL 8 "$Date: 2000/09/07 21:14:00 $"
17 \- an electronic mail transport agent
20 .RI [ flags "] [" "address ..." ]
34 sends a message to one or more
36 routing the message over whatever networks
39 does internetwork forwarding as necessary
40 to deliver the message to the correct place.
43 is not intended as a user interface routine;
44 other programs provide user-friendly
47 is used only to deliver pre-formatted messages.
51 reads its standard input
53 or a line consisting only of a single dot
54 and sends a copy of the message found there
55 to all of the addresses listed.
56 It determines the network(s) to use
57 based on the syntax and contents of the addresses.
59 Local addresses are looked up in a file
60 and aliased appropriately.
61 Aliasing can be prevented by preceding the address
63 Beginning with 8.10, the sender is included in any alias
65 if `john' sends to `group',
66 and `group' includes `john' in the expansion,
67 then the letter will also be delivered to `john'.
73 Current legal values are
81 mode. All input lines must end with a CR-LF,
82 and all messages will be generated with a CR-LF at the end.
84 the ``From:'' and ``Sender:''
85 fields are examined for the name of the sender.
88 Run as a daemon. This requires Berkeley
91 will fork and run in background
92 listening on socket 25 for incoming
95 This is normally run from
101 except runs in foreground.
104 Print the persistent host status database.
107 Purge expired entries from the persistent host status database.
110 Initialize the alias database.
113 Deliver mail in the usual way (default).
116 Print a listing of the queue.
121 protocol as described in
123 on standard input and output.
124 This flag implies all the operations of the
126 flag that are compatible with
130 Run in address test mode.
131 This mode reads addresses and shows the steps in parsing;
132 it is used for debugging configuration tables.
135 Verify names only \- do not try to collect or deliver a message.
136 Verify mode is normally used for validating
137 users or mailing lists.
140 Use alternate configuration file.
142 refuses to run as root if an alternate configuration file is specified.
145 Set debugging value to
150 Set the full name of the sender.
153 Sets the name of the ``from'' person
154 (i.e., the envelope sender of the mail).
155 This address may also be used in the From: header
156 if that header is missing during initial submission.
157 The envelope sender address is used as the recipient
158 for delivery status notifications
159 and may also appear in a Return-Path: header.
164 .IR root ", " daemon ,
167 or if the person you are trying to become
168 is the same as the person you are.
170 an X-Authentication-Warning header
171 will be added to the message.
174 Relay (gateway) submission of a message,
183 The hop count is incremented every time the mail is
185 When it reaches a limit,
186 the mail is returned with an error message,
187 the victim of an aliasing loop.
189 ``Received:'' lines in the message are counted.
192 Ignore dots alone on lines by themselves in incoming messages.
193 This should be set if you are reading data from a file.
196 Set the identifier used in syslog messages to the supplied
200 Set delivery status notification conditions to
205 or a comma separated list of the values
207 to be notified if delivery failed,
209 to be notified if delivery is delayed, and
211 to be notified when the message is successfully delivered.
216 \fB\-O\fP \fIoption\fR=\fIvalue\fR
221 This form uses long names. See below for more details.
228 This form uses single character names only.
229 The short names are not described in this manual page;
231 .I "Sendmail Installation and Operation Guide"
235 Set the name of the protocol used to receive the message.
236 This can be a simple protocol name such as ``UUCP''
237 or a protocol and hostname, such as ``UUCP:ucbvax''.
239 \fB\-q\fR[\fItime\fR]
240 Processed saved messages in the queue at given intervals.
243 is omitted, process the queue once.
245 is given as a tagged number,
262 would both set the timeout to one hour thirty minutes.
267 will run in the background.
268 This option can be used safely with
272 Limit processed jobs to those containing
274 as a substring of the queue id.
277 Limit processed jobs to those containing
279 as a substring of one of the recipients.
282 Limit processed jobs to those containing
284 as a substring of the sender.
287 Set the amount of the message to be returned
288 if the message bounces.
293 to return the entire message or
295 to return only the headers.
296 In the latter case also local bounces return only the headers.
299 An alternate and obsolete form of the
304 Read message for recipients.
305 To:, Cc:, and Bcc: lines will be scanned for recipient addresses.
306 The Bcc: line will be deleted before transmission.
309 Initial (user) submission. This should
311 be set when called from a user agent such as
317 be set when called by a network delivery agent such as
321 Set the original envelope id.
322 This is propagated across SMTP to servers that support DSNs
323 and is returned in DSN-compliant error messages.
326 Go into verbose mode.
327 Alias expansions will be announced, etc.
330 Log all traffic in and out of mailers in the indicated log file.
331 This should only be used as a last resort
332 for debugging mailer bugs.
333 It will log a lot of data very quickly.
336 Stop processing command flags and use the rest of the arguments as
339 There are also a number of processing options that may be set.
340 Normally these will only be used by a system administrator.
341 Options may be set either on the command line
344 flag (for short names), the
346 flag (for long names),
347 or in the configuration file.
348 This is a partial list limited to those options that are likely to be useful
350 and only shows the long names;
351 for a complete list (and details), consult the
352 .IR "Sendmail Installation and Operation Guide" .
356 Use alternate alias file.
359 On mailers that are considered ``expensive'' to connect to,
360 don't initiate immediate connection.
361 This requires queueing.
363 .RI CheckpointInterval= N
364 Checkpoint the queue file after every
366 successful deliveries (default 10).
367 This avoids excessive duplicate deliveries
368 when sending to long mailing lists
369 interrupted by system crashes.
373 Set the delivery mode to
377 for interactive (synchronous) delivery,
379 for background (asynchronous) delivery,
381 for queue only \- i.e.,
382 actual delivery is done the next time the queue is run, and
384 for deferred \- the same as
386 except that database lookups for maps which have set the \-D option
387 (default for the host map) are avoided.
390 Set error processing to mode
394 to mail back the error message,
397 back the error message
398 (or mail it back if the sender is not logged in),
400 to print the errors on the terminal
403 to throw away error messages
404 (only exit status is returned),
407 to do special processing for the BerkNet.
408 If the text of the message is not mailed back
414 and if the sender is local to this machine,
415 a copy of the message is appended to the file
417 in the sender's home directory.
422 From lines at the front of messages.
425 The maximum number of times a message is allowed to ``hop''
426 before we decide it is in a loop.
429 Do not take dots on a line by themselves
430 as a message terminator.
433 Send error messages in MIME format.
434 If not set, the DSN (Delivery Status Notification) SMTP extension
437 .RI ConnectionCacheTimeout= timeout
438 Set connection cache timeout.
440 .RI ConnectionCacheSize= N
441 Set connection cache size.
447 Don't send to ``me'' (the sender) if I am in an alias expansion.
450 Validate the right hand side of aliases during a
455 If set, this message may have
458 this message is guaranteed to have new style headers
459 (i.e., commas instead of spaces between addresses).
460 If set, an adaptive algorithm is used that will correctly
461 determine the header format in most cases.
463 .RI QueueDirectory= queuedir
464 Select the directory in which to queue messages.
467 Save statistics in the named file.
469 .RI Timeout.queuereturn= time
470 Set the timeout on undelivered messages in the queue to the specified time.
471 After delivery has failed
472 (e.g., because of a host being down)
473 for this amount of time,
474 failed messages will be returned to the sender.
475 The default is five days.
477 .RI UserDatabaseSpec= userdatabase
478 If set, a user database is consulted to get forwarding information.
479 You can consider this an adjunct to the aliasing mechanism,
480 except that the database is intended to be distributed;
481 aliases are local to a particular host.
482 This may not be available if your sendmail does not have the
487 Fork each job during queue runs.
488 May be convenient on memory-poor machines.
491 Strip incoming messages to seven bits.
493 .RI EightBitMode= mode
494 Set the handling of eight bit input to seven bit destinations to
497 (mimefy) will convert to seven-bit MIME format,
499 (pass) will pass it as eight bits (but violates protocols),
502 (strict) will bounce the message.
504 .RI MinQueueAge= timeout
505 Sets how long a job must ferment in the queue between attempts to send it.
507 .RI DefaultCharSet= charset
508 Sets the default character set used to label 8-bit data
509 that is not otherwise labelled.
511 .RI DialDelay= sleeptime
512 If opening a connection fails,
515 seconds and try again.
516 Useful on dial-on-demand sites.
518 .RI NoRecipientAction= action
519 Set the behaviour when there are no recipient headers (To:, Cc: or
520 Bcc:) in the message to
523 leaves the message unchanged,
525 adds a To: header with the envelope recipients,
527 adds an Apparently-To: header with the envelope recipients,
529 adds an empty Bcc: header, and
531 adds a header reading
532 `To: undisclosed-recipients:;'.
534 .RI MaxDaemonChildren= N
535 Sets the maximum number of children that an incoming SMTP daemon
536 will allow to spawn at any time to
539 .RI ConnectionRateThrottle= N
540 Sets the maximum number of connections per second to the SMTP port to
544 the first character of a name may be
545 a vertical bar to cause interpretation of
546 the rest of the name as a command
548 It may be necessary to quote the name
551 from suppressing the blanks from between arguments.
552 For example, a common alias is:
554 msgs: "|/usr/bin/msgs -s"
556 Aliases may also have the syntax
557 .RI ``:include: filename ''
560 to read the named file for a list of recipients.
561 For example, an alias such as:
563 poets: ":include:/usr/local/lib/poets.list"
566 .I /usr/local/lib/poets.list
567 for the list of addresses making up the group.
570 returns an exit status
571 describing what it did.
572 The codes are defined in
576 Successful completion on all addresses.
579 User name not recognized.
582 Catchall meaning necessary resources
586 Syntax error in address.
589 Internal software error,
590 including bad arguments.
593 Temporary operating system error,
598 Host name not recognized.
601 Message could not be sent immediately,
607 will rebuild the alias database. If invoked as
610 will print the contents of the mail queue.
614 will print the persistent host status database.
618 will purge expired entries from the persistent host status database.
622 will act as a daemon, as if the
624 option were specified.
627 often gets blamed for many problems
628 that are actually the result of other problems,
629 such as overly permissive modes on directories.
632 checks the modes on system directories and files
633 to determine if they can be trusted.
634 Although these checks can be turned off
635 and your system security reduced by setting the
636 .BR DontBlameSendmail
638 the permission problems should be fixed.
639 For more information, see:
641 .I http://www.sendmail.org/tips/DontBlameSendmail.html
644 .I /etc/mail/sendmail.cf
645 itself the following pathnames are all specified in
646 .IR /etc/mail/sendmail.cf .
648 these values are only approximations.
652 raw data for alias names
655 data base of alias names
657 /etc/mail/sendmail.cf
678 Internet Request For Comments
682 .IR "Sendmail Installation and Operation Guide" ,
685 http://www.sendmail.org/