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