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  unde-
       liverable  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.


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.

       bouncefrom
            Bounce username.  Default: MAILER-DAEMON.

       bouncehost
            Bounce host.  Default: me, if that is supplied;  oth-
            erwise the literal name bouncehost, which is probably
            not what you want.  If a message is permanently unde-
            liverable,  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  com-
            pile 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 com-
            pile time to 120.

            Double-bounce host.  Default: me,  if  that  is  sup-
            plied;  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 undeliver-
            able, qmail-send sends a double-bounce notice to dou-
            blebounceto@doublebouncehost.    (If   that  bounces,
            qmail-send gives up.)

       envnoathost
            Presumed domain name for addresses without  @  signs.
            Default:  me, if that is supplied; otherwise the lit-
            eral 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 sup-
            plied;  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  per-
            centhack 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  perma-
            nent failures.

       virtualdomains
            List  of virtual domains, one per line.  Each virtual
            domain has the form domain:prepend, without any extra
            spaces.   When qmail-send sees a recipient address at
            domain, say user@domain, it converts it  to  prepend-
            user@domain and treats it as local.  For example, if

                 nowhere.mil:joe-foo

            is  in  virtualdomains,  and  a  message  arrives for
            info@nowhere.mil, qmail-send will rewrite the recipi-
            ent  address  as joe-foo-info@nowhere.mil and deliver

                 .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.


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)