Patrick Welche <prlw1@cam.ac.uk>
[netbsd-mini2440.git] / external / ibm-public / postfix / dist / man / man1 / sendmail.1
blob5a199d484c3b0c11d174d914fd77306fc70b20aa
1 .\"     $NetBSD$
2 .\"
3 .TH SENDMAIL 1 
4 .ad
5 .fi
6 .SH NAME
7 sendmail
8 \-
9 Postfix to Sendmail compatibility interface
10 .SH "SYNOPSIS"
11 .na
12 .nf
13 \fBsendmail\fR [\fIoption ...\fR] [\fIrecipient ...\fR]
15 \fBmailq\fR
16 \fBsendmail -bp\fR
18 \fBnewaliases\fR
19 \fBsendmail -I\fR
20 .SH DESCRIPTION
21 .ad
22 .fi
23 The Postfix \fBsendmail\fR(1) command implements the Postfix
24 to Sendmail compatibility interface.
25 For the sake of compatibility with existing applications, some
26 Sendmail command-line options are recognized but silently ignored.
28 By default, Postfix \fBsendmail\fR(1) reads a message from
29 standard input
30 until EOF or until it reads a line with only a \fB.\fR character,
31 and arranges for delivery.  Postfix \fBsendmail\fR(1) relies on the
32 \fBpostdrop\fR(1) command to create a queue file in the \fBmaildrop\fR
33 directory.
35 Specific command aliases are provided for other common modes of
36 operation:
37 .IP \fBmailq\fR
38 List the mail queue. Each entry shows the queue file ID, message
39 size, arrival time, sender, and the recipients that still need to
40 be delivered.  If mail could not be delivered upon the last attempt,
41 the reason for failure is shown. The queue ID string is
42 followed by an optional status character:
43 .RS
44 .IP \fB*\fR
45 The message is in the \fBactive\fR queue, i.e. the message is
46 selected for delivery.
47 .IP \fB!\fR
48 The message is in the \fBhold\fR queue, i.e. no further delivery
49 attempt will be made until the mail is taken off hold.
50 .RE
51 .IP
52 This mode of operation is implemented by executing the
53 \fBpostqueue\fR(1) command.
54 .IP \fBnewaliases\fR
55 Initialize the alias database.  If no input file is specified (with
56 the \fB-oA\fR option, see below), the program processes the file(s)
57 specified with the \fBalias_database\fR configuration parameter.
58 If no alias database type is specified, the program uses the type
59 specified with the \fBdefault_database_type\fR configuration parameter.
60 This mode of operation is implemented by running the \fBpostalias\fR(1)
61 command.
62 .sp
63 Note: it may take a minute or so before an alias database update
64 becomes visible. Use the "\fBpostfix reload\fR" command to eliminate
65 this delay.
66 .PP
67 These and other features can be selected by specifying the
68 appropriate combination of command-line options. Some features are
69 controlled by parameters in the \fBmain.cf\fR configuration file.
71 The following options are recognized:
72 .IP "\fB-Am\fR (ignored)"
73 .IP "\fB-Ac\fR (ignored)"
74 Postfix sendmail uses the same configuration file regardless of
75 whether or not a message is an initial submission.
76 .IP "\fB-B \fIbody_type\fR"
77 The message body MIME type: \fB7BIT\fR or \fB8BITMIME\fR.
78 .IP \fB-bd\fR
79 Go into daemon mode. This mode of operation is implemented by
80 executing the "\fBpostfix start\fR" command.
81 .IP "\fB-bh\fR (ignored)"
82 .IP "\fB-bH\fR (ignored)"
83 Postfix has no persistent host status database.
84 .IP \fB-bi\fR
85 Initialize alias database. See the \fBnewaliases\fR
86 command above.
87 .IP \fB-bm\fR
88 Read mail from standard input and arrange for delivery.
89 This is the default mode of operation.
90 .IP \fB-bp\fR
91 List the mail queue. See the \fBmailq\fR command above.
92 .IP \fB-bs\fR
93 Stand-alone SMTP server mode. Read SMTP commands from
94 standard input, and write responses to standard output.
95 In stand-alone SMTP server mode, mail relaying and other
96 access controls are disabled by default. To enable them,
97 run the process as the \fBmail_owner\fR user.
98 .sp
99 This mode of operation is implemented by running the
100 \fBsmtpd\fR(8) daemon.
101 .IP \fB-bv\fR
102 Do not collect or deliver a message. Instead, send an email
103 report after verifying each recipient address.  This is useful
104 for testing address rewriting and routing configurations.
106 This feature is available in Postfix version 2.1 and later.
107 .IP "\fB-C \fIconfig_file\fR"
108 .IP "\fB-C \fIconfig_dir\fR"
109 The path name of the Postfix \fBmain.cf\fR file, or of its
110 parent directory. This information is ignored with Postfix
111 versions before 2.3.
113 With all Postfix versions, you can specify a directory pathname
114 with the MAIL_CONFIG environment variable to override the
115 location of configuration files.
116 .IP "\fB-F \fIfull_name\fR
117 Set the sender full name. This overrides the NAME environment
118 variable, and is used only with messages that
119 have no \fBFrom:\fR message header.
120 .IP "\fB-f \fIsender\fR"
121 Set the envelope sender address. This is the address where
122 delivery problems are sent to. With Postfix versions before 2.1, the
123 \fBErrors-To:\fR message header overrides the error return address.
124 .IP \fB-G\fR
125 Gateway (relay) submission, as opposed to initial user
126 submission.  Either do not rewrite addresses at all, or
127 update incomplete addresses with the domain information
128 specified with \fBremote_header_rewrite_domain\fR.
130 This option is ignored before Postfix version 2.3.
131 .IP "\fB-h \fIhop_count\fR (ignored)"
132 Hop count limit. Use the \fBhopcount_limit\fR configuration
133 parameter instead.
134 .IP \fB-I\fR
135 Initialize alias database. See the \fBnewaliases\fR
136 command above.
137 .IP "\fB-i\fR"
138 When reading a message from standard input, don\'t treat a line
139 with only a \fB.\fR character as the end of input.
140 .IP "\fB-L \fIlabel\fR (ignored)"
141 The logging label. Use the \fBsyslog_name\fR configuration
142 parameter instead.
143 .IP "\fB-m\fR (ignored)"
144 Backwards compatibility.
145 .IP "\fB-N \fIdsn\fR (default: 'delay, failure')"
146 Delivery status notification control. Specify either a
147 comma-separated list with one or more of \fBfailure\fR (send
148 notification when delivery fails), \fBdelay\fR (send
149 notification when delivery is delayed), or \fBsuccess\fR
150 (send notification when the message is delivered); or specify
151 \fBnever\fR (don't send any notifications at all).
153 This feature is available in Postfix 2.3 and later.
154 .IP "\fB-n\fR (ignored)"
155 Backwards compatibility.
156 .IP "\fB-oA\fIalias_database\fR"
157 Non-default alias database. Specify \fIpathname\fR or
158 \fItype\fR:\fIpathname\fR. See \fBpostalias\fR(1) for
159 details.
160 .IP "\fB-O \fIoption=value\fR (ignored)"
161 Backwards compatibility.
162 .IP "\fB-o7\fR (ignored)"
163 .IP "\fB-o8\fR (ignored)"
164 To send 8-bit or binary content, use an appropriate MIME encapsulation
165 and specify the appropriate \fB-B\fR command-line option.
166 .IP "\fB-oi\fR"
167 When reading a message from standard input, don\'t treat a line
168 with only a \fB.\fR character as the end of input.
169 .IP "\fB-om\fR (ignored)"
170 The sender is never eliminated from alias etc. expansions.
171 .IP "\fB-o \fIx value\fR (ignored)"
172 Set option \fIx\fR to \fIvalue\fR. Use the equivalent
173 configuration parameter in \fBmain.cf\fR instead.
174 .IP "\fB-r \fIsender\fR"
175 Set the envelope sender address. This is the address where
176 delivery problems are sent to. With Postfix versions before 2.1, the
177 \fBErrors-To:\fR message header overrides the error return address.
178 .IP "\fB-R \fIreturn_limit\fR (ignored)"
179 Limit the size of bounced mail. Use the \fBbounce_size_limit\fR
180 configuration parameter instead.
181 .IP \fB-q\fR
182 Attempt to deliver all queued mail. This is implemented by
183 executing the \fBpostqueue\fR(1) command.
185 Warning: flushing undeliverable mail frequently will result in
186 poor delivery performance of all other mail.
187 .IP "\fB-q\fIinterval\fR (ignored)"
188 The interval between queue runs. Use the \fBqueue_run_delay\fR
189 configuration parameter instead.
190 .IP \fB-qI\fIqueueid\fR
191 Schedule immediate delivery of mail with the specified queue
192 ID.  This option is implemented by executing the
193 \fBpostqueue\fR(1) command, and is available with Postfix
194 version 2.4 and later.
195 .IP \fB-qR\fIsite\fR
196 Schedule immediate delivery of all mail that is queued for the named
197 \fIsite\fR. This option accepts only \fIsite\fR names that are
198 eligible for the "fast flush" service, and is implemented by
199 executing the \fBpostqueue\fR(1) command.
200 See \fBflush\fR(8) for more information about the "fast flush"
201 service.
202 .IP \fB-qS\fIsite\fR
203 This command is not implemented. Use the slower "\fBsendmail -q\fR"
204 command instead.
205 .IP \fB-t\fR
206 Extract recipients from message headers. These are added to any
207 recipients specified on the command line.
209 With Postfix versions prior to 2.1, this option requires that
210 no recipient addresses are specified on the command line.
211 .IP "\fB-U\fR (ignored)"
212 Initial user submission.
213 .IP "\fB-V \fIenvid\fR"
214 Specify the envelope ID for notification by servers that
215 support DSN.
217 This feature is available in Postfix 2.3 and later.
218 .IP "\fB-XV\fR (Postfix 2.2 and earlier: \fB-V\fR)"
219 Variable Envelope Return Path. Given an envelope sender address
220 of the form \fIowner-listname\fR@\fIorigin\fR, each recipient
221 \fIuser\fR@\fIdomain\fR receives mail with a personalized envelope
222 sender address.
224 By default, the personalized envelope sender address is
225 \fIowner-listname\fB+\fIuser\fB=\fIdomain\fR@\fIorigin\fR. The default
226 \fB+\fR and \fB=\fR characters are configurable with the
227 \fBdefault_verp_delimiters\fR configuration parameter.
228 .IP "\fB-XV\fIxy\fR (Postfix 2.2 and earlier: \fB-V\fIxy\fR)"
229 As \fB-XV\fR, but uses \fIx\fR and \fIy\fR as the VERP delimiter
230 characters, instead of the characters specified with the
231 \fBdefault_verp_delimiters\fR configuration parameter.
232 .IP \fB-v\fR
233 Send an email report of the first delivery attempt (Postfix
234 versions 2.1 and later). Mail delivery
235 always happens in the background. When multiple \fB-v\fR
236 options are given, enable verbose logging for debugging purposes.
237 .IP "\fB-X \fIlog_file\fR (ignored)"
238 Log mailer traffic. Use the \fBdebug_peer_list\fR and
239 \fBdebug_peer_level\fR configuration parameters instead.
240 .SH "SECURITY"
245 By design, this program is not set-user (or group) id. However,
246 it must handle data from untrusted, possibly remote, users.
247 Thus, the usual precautions need to be taken against malicious
248 inputs.
249 .SH DIAGNOSTICS
252 Problems are logged to \fBsyslogd\fR(8) and to the standard error
253 stream.
254 .SH "ENVIRONMENT"
259 .IP \fBMAIL_CONFIG\fR
260 Directory with Postfix configuration files.
261 .IP "\fBMAIL_VERBOSE\fR (value does not matter)"
262 Enable verbose logging for debugging purposes.
263 .IP "\fBMAIL_DEBUG\fR (value does not matter)"
264 Enable debugging with an external command, as specified with the
265 \fBdebugger_command\fR configuration parameter.
266 .IP \fBNAME\fR
267 The sender full name. This is used only with messages that
268 have no \fBFrom:\fR message header. See also the \fB-F\fR
269 option above.
270 .SH "CONFIGURATION PARAMETERS"
275 The following \fBmain.cf\fR parameters are especially relevant to
276 this program.
277 The text below provides only a parameter summary. See
278 \fBpostconf\fR(5) for more details including examples.
279 .SH "TROUBLE SHOOTING CONTROLS"
284 The DEBUG_README file gives examples of how to trouble shoot a
285 Postfix system.
286 .IP "\fBdebugger_command (empty)\fR"
287 The external command to execute when a Postfix daemon program is
288 invoked with the -D option.
289 .IP "\fBdebug_peer_level (2)\fR"
290 The increment in verbose logging level when a remote client or
291 server matches a pattern in the debug_peer_list parameter.
292 .IP "\fBdebug_peer_list (empty)\fR"
293 Optional list of remote client or server hostname or network
294 address patterns that cause the verbose logging level to increase
295 by the amount specified in $debug_peer_level.
296 .SH "ACCESS CONTROLS"
301 Available in Postfix version 2.2 and later:
302 .IP "\fBauthorized_flush_users (static:anyone)\fR"
303 List of users who are authorized to flush the queue.
304 .IP "\fBauthorized_mailq_users (static:anyone)\fR"
305 List of users who are authorized to view the queue.
306 .IP "\fBauthorized_submit_users (static:anyone)\fR"
307 List of users who are authorized to submit mail with the \fBsendmail\fR(1)
308 command (and with the privileged \fBpostdrop\fR(1) helper command).
309 .SH "RESOURCE AND RATE CONTROLS"
314 .IP "\fBbounce_size_limit (50000)\fR"
315 The maximal amount of original message text that is sent in a
316 non-delivery notification.
317 .IP "\fBfork_attempts (5)\fR"
318 The maximal number of attempts to fork() a child process.
319 .IP "\fBfork_delay (1s)\fR"
320 The delay between attempts to fork() a child process.
321 .IP "\fBhopcount_limit (50)\fR"
322 The maximal number of Received:  message headers that is allowed
323 in the primary message headers.
324 .IP "\fBqueue_run_delay (300s)\fR"
325 The time between deferred queue scans by the queue manager;
326 prior to Postfix 2.4 the default value was 1000s.
327 .SH "FAST FLUSH CONTROLS"
332 The ETRN_README file describes configuration and operation
333 details for the Postfix "fast flush" service.
334 .IP "\fBfast_flush_domains ($relay_domains)\fR"
335 Optional list of destinations that are eligible for per-destination
336 logfiles with mail that is queued to those destinations.
337 .SH "VERP CONTROLS"
342 The VERP_README file describes configuration and operation
343 details of Postfix support for variable envelope return
344 path addresses.
345 .IP "\fBdefault_verp_delimiters (+=)\fR"
346 The two default VERP delimiter characters.
347 .IP "\fBverp_delimiter_filter (-=+)\fR"
348 The characters Postfix accepts as VERP delimiter characters on the
349 Postfix \fBsendmail\fR(1) command line and in SMTP commands.
350 .SH "MISCELLANEOUS CONTROLS"
355 .IP "\fBalias_database (see 'postconf -d' output)\fR"
356 The alias databases for \fBlocal\fR(8) delivery that are updated with
357 "\fBnewaliases\fR" or with "\fBsendmail -bi\fR".
358 .IP "\fBcommand_directory (see 'postconf -d' output)\fR"
359 The location of all postfix administrative commands.
360 .IP "\fBconfig_directory (see 'postconf -d' output)\fR"
361 The default location of the Postfix main.cf and master.cf
362 configuration files.
363 .IP "\fBdaemon_directory (see 'postconf -d' output)\fR"
364 The directory with Postfix support programs and daemon programs.
365 .IP "\fBdefault_database_type (see 'postconf -d' output)\fR"
366 The default database type for use in \fBnewaliases\fR(1), \fBpostalias\fR(1)
367 and \fBpostmap\fR(1) commands.
368 .IP "\fBdelay_warning_time (0h)\fR"
369 The time after which the sender receives the message headers of
370 mail that is still queued.
371 .IP "\fBenable_errors_to (no)\fR"
372 Report mail delivery errors to the address specified with the
373 non-standard Errors-To: message header, instead of the envelope
374 sender address (this feature is removed with Postfix version 2.2, is
375 turned off by default with Postfix version 2.1, and is always turned on
376 with older Postfix versions).
377 .IP "\fBmail_owner (postfix)\fR"
378 The UNIX system account that owns the Postfix queue and most Postfix
379 daemon processes.
380 .IP "\fBqueue_directory (see 'postconf -d' output)\fR"
381 The location of the Postfix top-level queue directory.
382 .IP "\fBremote_header_rewrite_domain (empty)\fR"
383 Don't rewrite message headers from remote clients at all when
384 this parameter is empty; otherwise, rewrite message headers and
385 append the specified domain name to incomplete addresses.
386 .IP "\fBsyslog_facility (mail)\fR"
387 The syslog facility of Postfix logging.
388 .IP "\fBsyslog_name (see 'postconf -d' output)\fR"
389 The mail system name that is prepended to the process name in syslog
390 records, so that "smtpd" becomes, for example, "postfix/smtpd".
391 .SH "FILES"
394 /var/spool/postfix, mail queue
395 /etc/postfix, configuration files
396 .SH "SEE ALSO"
399 pickup(8), mail pickup daemon
400 qmgr(8), queue manager
401 smtpd(8), SMTP server
402 flush(8), fast flush service
403 postsuper(1), queue maintenance
404 postalias(1), create/update/query alias database
405 postdrop(1), mail posting utility
406 postfix(1), mail system control
407 postqueue(1), mail queue control
408 syslogd(8), system logging
409 .SH "README_FILES"
414 Use "\fBpostconf readme_directory\fR" or
415 "\fBpostconf html_directory\fR" to locate this information.
418 DEBUG_README, Postfix debugging howto
419 ETRN_README, Postfix ETRN howto
420 VERP_README, Postfix VERP howto
421 .SH "LICENSE"
426 The Secure Mailer license must be distributed with this software.
427 .SH "AUTHOR(S)"
430 Wietse Venema
431 IBM T.J. Watson Research
432 P.O. Box 704
433 Yorktown Heights, NY 10598, USA