debian/rules: Use `git' potty wrapper.
[qmail] / qmail-send.9
CommitLineData
2117e02e
MW
1.TH qmail-send 8
2.SH NAME
3qmail-send \- deliver mail messages from the queue
4.SH SYNOPSIS
5.B qmail-send
6.SH DESCRIPTION
7.B qmail-send
8handles messages placed into the outgoing queue by
9.BR qmail-queue .
10It uses
11.B qmail-lspawn
12to deliver messages to local recipients and
13.B qmail-rspawn
14to deliver messages to remote recipients.
15If a message is temporarily undeliverable to one or more addresses,
16.B qmail-send
17leaves it in the queue and tries the addresses again later.
18
19.B qmail-send
20prints a readable record of its activities to descriptor 0.
21It writes commands to
22.BR qmail-lspawn ,
23.BR qmail-rspawn ,
24and
25.B qmail-clean
26on descriptors 1, 3, and 5,
27and reads responses from descriptors 2, 4, and 6.
28.B qmail-send
29is responsible for avoiding deadlock.
30
31If
32.B qmail-send
33receives a TERM signal,
34it will exit cleanly, after waiting
35(possibly more than a minute)
36for current delivery attempts to finish.
37
38If
39.B qmail-send
40receives an ALRM signal,
41it will reschedule every message in the queue for immediate delivery.
42.SH "CONTROL FILES"
43.B WARNING:
44.B qmail-send
45reads its control files only when it starts.
46If you change the control files,
47you must stop and restart
48.BR qmail-send .
49Exception:
50If
51.B qmail-send
52receives a HUP signal,
53it will reread
54.I locals
55and
56.IR virtualdomains .
57.TP 5
58.I bouncefrom
59Bounce username.
60Default:
61.BR MAILER-DAEMON .
62.TP 5
63.I bouncehost
64Bounce host.
65Default:
66.IR me ,
67if that is supplied;
68otherwise the literal name
69.BR bouncehost ,
70which is probably not what you want.
71If a message is permanently undeliverable,
72.B qmail-send
73sends a
74.B single-bounce
75notice back to the message's envelope sender.
76The notice is
77.B From: \fIbouncefrom\fB@\fIbouncehost\fR,
78although its envelope sender is empty.
79.TP 5
80.I concurrencylocal
81Maximum number of simultaneous local delivery attempts.
82Default: 10.
83If 0, local deliveries will be put on hold.
84.I concurrencylocal
85is limited at compile time to
86SPAWN.
87.TP 5
88.I concurrencyremote
89Maximum number of simultaneous remote delivery attempts.
90Default: 20.
91If 0, remote deliveries will be put on hold.
92.I concurrencyremote
93is limited at compile time to
94SPAWN.
95.TP 5
96.I doublebouncehost
97Double-bounce host.
98Default:
99.IR me ,
100if that is supplied;
101otherwise the literal name
102.BR doublebouncehost ,
103which is probably not what you want.
104.TP 5
105.I doublebounceto
106User to receive double-bounces.
107Default:
108.BR postmaster .
109If a single-bounce notice is permanently undeliverable,
110.B qmail-send
111sends a
112.B double-bounce
113notice to
114.IR doublebounceto\fB@\fIdoublebouncehost .
115(If that bounces,
116.B qmail-send
117gives up.)
118.TP 5
119.I envnoathost
120Presumed domain name for addresses without @ signs.
121Default:
122.IR me ,
123if that is supplied;
124otherwise the literal name
125.BR envnoathost ,
126which is probably not what you want.
127If
128.B qmail-send
129sees an envelope recipient address without an @ sign,
130it appends
131.B @\fIenvnoathost\fR.
132.TP 5
133.I locals
134List of domain names that the current host
135receives mail for,
136one per line.
137Default:
138.IR me ,
139if that is supplied;
140otherwise
141.B qmail-send
142refuses to run.
143An address
144.I user@domain
145is considered local if
146.I domain
147is listed in
148.IR locals .
149.TP 5
150.I percenthack
151List of domain names where the percent hack is applied.
152If
153.I domain
154is listed in
155.IR percenthack ,
156any address of the form
157.I user%fqdn@domain
158is rewritten as
159.IR user@fqdn .
160.I user
161may contain %,
162so the percent hack may be applied repeatedly.
163.B qmail-send
164handles
165.I percenthack
166before
212b6f5d 167.IR locals .
2117e02e
MW
168.TP 5
169.I queuelifetime
170Number of seconds
171a message can stay in the queue.
172Default: 604800 (one week).
173After this time expires,
174.B qmail-send
175will try the message once more,
176but it will treat any temporary delivery failures as
177permanent failures.
178.TP 5
2117e02e 179.I virtualdomains
212b6f5d
MW
180List of virtual users or domains, one per line.
181A virtual user has the form
182.IR user\fB@\fIdomain\fB:\fIprepend ,
2117e02e
MW
183without any extra spaces.
184When
185.B qmail-send
212b6f5d 186sees the recipient address
2117e02e
MW
187.IR user\fB@\fIdomain ,
188it converts it to
189.I prepend\fB-\fIuser\fB@\fIdomain
190and treats it as local.
212b6f5d
MW
191
192A virtual domain has the form
193.IR domain\fB:\fIprepend .
194It applies to any recipient address at
195.IR domain .
2117e02e
MW
196For example, if
197
198.EX
199 nowhere.mil:joeBREAKfoo
200.EE
201
202is in
203.IR virtualdomains ,
204and a message arrives for
205.BR info@nowhere.mil ,
206.B qmail-send
207will rewrite the recipient address as
208.B joeBREAKfoo-info@nowhere.mil
209and deliver the message locally.
212b6f5d 210
2117e02e
MW
211.I virtualdomains
212may contain wildcards:
213
214.EX
215 .fax:uucpBREAKfax
216 :aliasBREAKcatchall
217 .nowhere.mil:joeBREAKfoo-host
218.EE
219
220.I virtualdomains
221may also contain exceptions:
222an empty
223.I prepend
224means that
225.I domain
226is not a virtual domain.
227
228.B qmail-send
229handles
230.I virtualdomains
231after
232.IR locals :
233if a domain is listed in
234.IR locals ,
235.I virtualdomains
236does not apply.
237.SH "SEE ALSO"
238nice(1),
239addresses(5),
240envelopes(5),
241qmail-control(5),
242qmail-log(5),
243qmail-queue(8),
244qmail-clean(8),
245qmail-lspawn(8),
246qmail-rspawn(8)