table of contents
|qmail-queue(8)||System Manager's Manual||qmail-queue(8)|
NAME¶qmail-queue - queue a mail message for delivery
DESCRIPTION¶qmail-queue reads a mail message from descriptor 0. It then reads envelope information from descriptor 1. It places the message into the outgoing queue for future delivery by qmail-send.
The envelope information is an envelope sender address followed by a list of envelope recipient addresses. The sender address is preceded by the letter F and terminated by a 0 byte. Each recipient address is preceded by the letter T and terminated by a 0 byte. The list of recipient addresses is terminated by an extra 0 byte. If qmail-queue sees end-of-file before the extra 0 byte, it aborts without placing the message into the queue.
Every envelope recipient address should contain a username, an @ sign, and a fully qualified domain name.
qmail-queue always adds a Received line to the top of the message. Other than this, qmail-queue does not inspect the message and does not enforce any restrictions on its contents. However, the recipients probably expect to see a proper header, as described in qmail-header(5).
Programs included with qmail which invoke qmail-queue will invoke the contents of $QMAILQUEUE instead, if that environment variable is set.
FILESYSTEM RESTRICTIONS¶qmail-queue imposes two constraints on the queue structure: each mess subdirectory must be in the same filesystem as the pid directory; and each todo subdirectory must be in the same filesystem as the intd directory.
EXIT CODES¶qmail-queue does not print diagnostics. It exits 0 if it has successfully queued the message. It exits between 1 and 99 if it has failed to queue the message.
All qmail-queue error codes between 11 and 40 indicate permanent errors:
- Address too long.
- Mail server permanently refuses to send the message to any recipients. (Not used by qmail-queue, but can be used by programs offering the same interface.)
All other qmail-queue error codes indicate temporary errors:
- Out of memory.
- Write error; e.g., disk full.
- Unable to read the message or envelope.
- Unable to read a configuration file. (Not used by qmail-queue.)
- Problem making a network connection from this host. (Not used by qmail-queue.)
- Problem with the qmail home directory.
- Problem with the queue directory.
- Problem with queue/pid.
- Problem with queue/mess.
- Problem with queue/intd.
- Problem with queue/todo.
- Mail server temporarily refuses to send the message to any recipients. (Not used by qmail-queue.)
- Connection to mail server timed out. (Not used by qmail-queue.)
- Connection to mail server rejected. (Not used by qmail-queue.)
- Connection to mail server succeeded, but communication failed. (Not used by qmail-queue.)
- Internal bug; e.g., segmentation fault.
- Envelope format error.