NAME
qmail-send - deliver mail messages from the queue
SYNOPSIS
qmail-send
DESCRIPTION
qmail-send handles messages placed into the outgoing queue
by qmail-queue. It uses qmail-lspawn to deliver messages to
local recipients and qmail-rspawn to deliver messages to
remote recipients. If a message is temporarily
undeliverable to one or more addresses, qmail-send leaves it
in the queue and tries the addresses again later.
qmail-send prints a readable record of its activities to
descriptor 0. It writes commands to qmail-lspawn, qmail-
rspawn, and qmail-clean on descriptors 1, 3, and 5, and
reads responses from descriptors 2, 4, and 6. qmail-send is
responsible for avoiding deadlock.
If qmail-send receives a TERM signal, it will exit cleanly,
after waiting (possibly more than a minute) for current
delivery attempts to finish.
If qmail-send receives an ALRM signal, it will reschedule
every message in the queue for immediate delivery.
CONTROL FILES
WARNING: qmail-send reads its control files only when it
starts. If you change the control files, you must stop and
restart qmail-send. Exception: If qmail-send receives a
HUP signal, it will reread locals and virtualdomains.
bouncefrom
Bounce username. Default: MAILER-DAEMON.
bouncehost
Bounce host. Default: me, if that is supplied;
otherwise the literal name bouncehost, which is
probably not what you want. If a message is
permanently undeliverable, qmail-send sends a single-
bounce notice back to the message's envelope sender.
The notice is From: bouncefrom@bouncehost, although its
envelope sender is empty.
concurrencylocal
Maximum number of simultaneous local delivery attempts.
Default: 10. If 0, local deliveries will be put on
hold. concurrencylocal is limited at compile time to
120.
concurrencyremote
Maximum number of simultaneous remote delivery
attempts. Default: 20. If 0, remote deliveries will
be put on hold. concurrencyremote is limited at
compile time to 120.
doublebouncehost
Double-bounce host. Default: me, if that is supplied;
otherwise the literal name doublebouncehost, which is
probably not what you want.
doublebounceto
User to receive double-bounces. Default: postmaster.
If a single-bounce notice is permanently undeliverable,
qmail-send sends a double-bounce notice to
doublebounceto@doublebouncehost. (If that bounces,
qmail-send gives up.)
envnoathost
Presumed domain name for addresses without @ signs.
Default: me, if that is supplied; otherwise the
literal name envnoathost, which is probably not what
you want. If qmail-send sees an envelope recipient
address without an @ sign, it appends @envnoathost.
locals
List of domain names that the current host receives
mail for, one per line. Default: me, if that is
supplied; otherwise qmail-send refuses to run. An
address user@domain is considered local if domain is
listed in locals.
percenthack
List of domain names where the percent hack is applied.
If domain is listed in percenthack, any address of the
form user%fqdn@domain is rewritten as user@fqdn. user
may contain %, so the percent hack may be applied
repeatedly. qmail-send handles percenthack before
locals.
queuelifetime
Number of seconds a message can stay in the queue.
Default: 604800 (one week). After this time expires,
qmail-send will try the message once more, but it will
treat any temporary delivery failures as permanent
failures.
virtualdomains
List of virtual users or domains, one per line. A
virtual user has the form user@domain:prepend, without
any extra spaces. When qmail-send sees the recipient
address user@domain, it converts it to prepend-
user@domain and treats it as local.
A virtual domain has the form domain:prepend. It
applies to any recipient address at domain. For
example, if
nowhere.mil:joe-foo
is in virtualdomains, and a message arrives for
info@nowhere.mil, qmail-send will rewrite the recipient
address as joe-foo-info@nowhere.mil and deliver the
message locally.
virtualdomains may contain wildcards:
.fax:uucp-fax
:alias-catchall
.nowhere.mil:joe-foo-host
virtualdomains may also contain exceptions: an empty
prepend means that domain is not a virtual domain.
qmail-send handles virtualdomains after locals: if a
domain is listed in locals, virtualdomains does not
apply.
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)
Man(1) output converted with
man2html