NAME
nullmailer-send - Send queued messages
SYNOPSIS
nullmailer-send [--daemon] [--syslog]
DESCRIPTION
This program is responsible for coordinating the transmission of
messages that have been queued by nullmailer-queue. It uses a variety
of protocol modules to deliver the messages from the queue to remote
"smart" servers.
When the program starts, the queue is scanned to build a list of
messages to send. The queue is rescanned when either the trigger is
pulled, or after pausetime seconds have elapsed after the last failed
delivery. When there are no messages in the queue, nullmailer does no
rescanning until the trigger is pulled. Pulling the trigger consists
of opening up the trigger named pipe and writing a single byte to it,
which causes this program to be awakened (if it’s not already
processing the queue). This procedure is done by nullmailer-queue to
ensure that messages are delivered immediately.
Delivery of messages consists of reading the list of remote servers and
then trying to deliver the messages to these servers as follows. For
each remote in the list, the named protocol handler is executed once
for each message remaining in the queue. If the protocol handler
succeeds, the message is removed from the queue and processing
continues with the next message. If it fails, the remote is skipped
and processing of the remaing messages continues with the next remote.
When all the remotes have been tried, nullmailer-send sleeps for a
number of seconds specified by pausetime before retrying sending the
contents of the queue.
OPTIONS
-d, --daemon
Fork into the background, implies --syslog.
-s, --syslog
Use syslog for error and log messages. With --daemon, syslog
will be used exclusively, without --daemon, syslog will be used
additionally.
CONTROL FILES
All the control files are reread each time the queue is run.
helohost
Sets the environment variable $HELOHOST which is used by the
SMTP protocol module to set the parameter given to the HELO
command. Defaults to the value of the me configuration file.
pausetime
The number of seconds to pause between successive queue runs
when there are messages in the queue (defaults to 60). If this
is set to 0, nullmailer-send will exit immediately after going
through the queue once (one-shot mode).
remotes
This file contains a list of remote servers to which to send
each message. Each line of this file contains a remote host
name or address followed by an optional protocol string,
separated by white space. The protocol name defaults to smtp,
and may be followed by command-line arguments for that module.
For example, to connect to port 2525 on your SMTP smart host,
which also requires SMTP authentication, use:
smarthost.dom smtp --port=2525 --user=user --pass=pass
If your smarthost requires LOGIN authentication instead of the
default PLAIN method, use:
smarthost.dom smtp --port=2525 --auth-login --user=user
--pass=pass
Blank lines and lines starting with a pound are ignored.
sendtimeout
The number of seconds to wait for a remote module listed above
to complete sending a message before killing it and trying again
(defaults to 3600). If this is set to 0, nullmailer-send will
wait forever for messages to complete sending.
FILES
/var/spool/nullmailer/queue
The message queue.
/var/spool/nullmailer/trigger
A trigger file to cause immediate delivery.
/etc/nullmailer
The configuration directory.
/usr/lib/nullmailer
The protocol program directory.
SEE ALSO
nullmailer-queue(8), nullmailer-inject(1), mailq(1)
nullmailer-send(8)