chiark / gitweb /
Merge branches 'idx/verh' and 'idx/qmqpc'
[qmail] / qmail-queue.8
1 .TH qmail-queue 8
2 .SH NAME
3 qmail-queue \- queue a mail message for delivery
4 .SH SYNOPSIS
5 .B qmail-queue
6 .SH DESCRIPTION
7 .B qmail-queue
8 reads a mail message from descriptor 0.
9 It then reads envelope information from descriptor 1.
10 It places the message into the outgoing queue
11 for future delivery by
12 .BR qmail-send .
13
14 The envelope information is
15 an envelope sender address
16 followed by a list of envelope recipient addresses.
17 The sender address is preceded by the letter F
18 and terminated by a 0 byte.
19 Each recipient address is preceded by the letter T
20 and terminated by a 0 byte.
21 The list of recipient addresses is terminated by an extra 0 byte.
22 If
23 .B qmail-queue
24 sees end-of-file before the extra 0 byte,
25 it aborts without placing the message into the queue.
26
27 Every envelope recipient address
28 should contain a username,
29 an @ sign,
30 and a fully qualified domain name.
31
32 .B qmail-queue
33 always adds a
34 .B Received
35 line to the top of the message.
36 Other than this,
37 .B qmail-queue
38 does not inspect the message
39 and does not enforce any restrictions on its contents.
40 However, the recipients probably expect to see a proper header,
41 as described in
42 .BR qmail-header(5) .
43 .SH "FILESYSTEM RESTRICTIONS"
44 .B qmail-queue
45 imposes two constraints on the queue structure:
46 each
47 .B mess
48 subdirectory must be in the same filesystem as the
49 .B pid
50 directory; and each
51 .B todo
52 subdirectory must be in the same filesystem as the
53 .B intd
54 directory.
55 .SH "EXIT CODES"
56 .B qmail-queue
57 does not print diagnostics.
58 It exits
59 0 if
60 it has successfully queued the message.
61 It exits between 1 and 99 if
62 it has failed to queue the message.
63
64 All
65 .B qmail-queue
66 error codes between 11 and 40
67 indicate permanent errors:
68 .TP 5
69 .B 11
70 Address too long.
71 .TP
72 .B 31
73 Mail server permanently refuses to send the message to any recipients.
74 (Not used by
75 .BR qmail-queue ,
76 but can be used by programs offering the same interface.)
77 .PP
78 All other
79 .B qmail-queue
80 error codes indicate temporary errors:
81 .TP 5
82 .B 51
83 Out of memory.
84 .TP
85 .B 52
86 Timeout.
87 .TP
88 .B 53
89 Write error; e.g., disk full.
90 .TP
91 .B 54
92 Unable to read the message or envelope.
93 .TP
94 .B 55
95 Unable to read a configuration file.
96 (Not used by
97 .BR qmail-queue .)
98 .TP
99 .B 56
100 Problem making a network connection from this host.
101 (Not used by
102 .BR qmail-queue .)
103 .TP
104 .B 61
105 Problem with the qmail home directory.
106 .TP
107 .B 62
108 Problem with the queue directory.
109 .TP
110 .B 63
111 Problem with queue/pid.
112 .TP
113 .B 64
114 Problem with queue/mess.
115 .TP
116 .B 65
117 Problem with queue/intd.
118 .TP
119 .B 66
120 Problem with queue/todo.
121 .TP
122 .B 71
123 Mail server temporarily refuses to send the message to any recipients.
124 (Not used by
125 .BR qmail-queue .)
126 .TP
127 .B 72
128 Connection to mail server timed out.
129 (Not used by
130 .BR qmail-queue .)
131 .TP
132 .B 73
133 Connection to mail server rejected.
134 (Not used by
135 .BR qmail-queue .)
136 .TP
137 .B 74
138 Connection to mail server succeeded,
139 but communication failed.
140 (Not used by
141 .BR qmail-queue .)
142 .TP
143 .B 81
144 Internal bug; e.g., segmentation fault.
145 .TP
146 .B 91
147 Envelope format error.
148 .SH "SEE ALSO"
149 addresses(5),
150 envelopes(5),
151 qmail-header(5),
152 qmail-inject(8),
153 qmail-qmqpc(8),
154 qmail-send(8),
155 qmail-smtpd(8)