114
114
descriptors. Excess connections will stay queued in
115
115
the TCP/IP stack.
117
<b>-M</b> <i>count</i>
118
Terminate after receiving <i>count</i> messages.
117
120
<b>-n</b> <i>count</i>
118
Terminate after <i>count</i> sessions. This is for testing
121
Terminate after <i>count</i> sessions.
121
<b>-p</b> Do not announce support for ESMTP command pipelin-
123
<b>-p</b> Do not announce support for ESMTP command pipelin-
124
<b>-P</b> Change the server greeting so that it appears to
126
<b>-P</b> Change the server greeting so that it appears to
125
127
come through a CISCO PIX system. Implies <b>-e</b>.
127
129
<b>-q</b> <i>command,command,...</i>
128
Disconnect (without replying) after receiving one
130
Disconnect (without replying) after receiving one
129
131
of the specified commands.
131
133
Examples of commands are CONNECT, HELO, EHLO, LHLO,
132
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
133
Separate command names by white space or commas,
134
and use quotes to protect white space from the
134
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
135
Separate command names by white space or commas,
136
and use quotes to protect white space from the
135
137
shell. Command names are case-insensitive.
137
139
<b>-Q</b> <i>command,command,...</i>
139
141
of the specified commands.
141
143
Examples of commands are CONNECT, HELO, EHLO, LHLO,
142
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
143
Separate command names by white space or commas,
144
and use quotes to protect white space from the
144
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
145
Separate command names by white space or commas,
146
and use quotes to protect white space from the
145
147
shell. Command names are case-insensitive.
147
149
<b>-r</b> <i>command,command,...</i>
148
Reject the specified commands with a soft (4xx)
150
Reject the specified commands with a soft (4xx)
149
151
error code. This option implies <b>-p</b>.
151
153
Examples of commands are CONNECT, HELO, EHLO, LHLO,
152
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
153
Separate command names by white space or commas,
154
and use quotes to protect white space from the
154
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
155
Separate command names by white space or commas,
156
and use quotes to protect white space from the
155
157
shell. Command names are case-insensitive.
157
159
<b>-R</b> <i>root-directory</i>
158
Change the process root directory to the specified
159
location. This option requires super-user privi-
160
Change the process root directory to the specified
161
location. This option requires super-user privi-
160
162
leges. See also the <b>-u</b> option.
162
164
<b>-s</b> <i>command,command,...</i>
163
165
Log the named commands to syslogd.
165
167
Examples of commands are CONNECT, HELO, EHLO, LHLO,
166
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
167
Separate command names by white space or commas,
168
and use quotes to protect white space from the
168
MAIL, RCPT, VRFY, DATA, ., RSET, NOOP, and QUIT.
169
Separate command names by white space or commas,
170
and use quotes to protect white space from the
169
171
shell. Command names are case-insensitive.
171
173
<b>-S start-string</b>
172
An optional string that is prepended to each mes-
173
sage that is written to a dump file (see the dump
174
file format description below). The following C
174
An optional string that is prepended to each mes-
175
sage that is written to a dump file (see the dump
176
file format description below). The following C
175
177
escape sequences are supported: \a (bell), \b
176
(backslace), \f (formfeed), \n (newline), \r (car-
177
riage return), \t (horizontal tab), \v (vertical
178
tab), \<i>ddd</i> (up to three octal digits) and \\ (the
178
(backslace), \f (formfeed), \n (newline), \r (car-
179
riage return), \t (horizontal tab), \v (vertical
180
tab), \<i>ddd</i> (up to three octal digits) and \\ (the
179
181
backslash character).
181
183
<b>-t</b> <i>timeout</i> (default: 100)
182
184
Limit the time for receiving a command or sending a
183
response. The time limit is specified in seconds.
185
response. The time limit is specified in seconds.
187
<b>-T</b> <i>windowsize</i>
188
Override the default TCP window size. To work
189
around broken TCP window scaling implementations,
190
specify a value > 0 and < 65536.
185
192
<b>-u</b> <i>username</i>
186
193
Switch to the specified user privileges after open-
187
ing the network socket and optionally changing the
188
process root directory. This option is required
189
when the process runs with super-user privileges.
194
ing the network socket and optionally changing the
195
process root directory. This option is required
196
when the process runs with super-user privileges.
190
197
See also the <b>-R</b> option.
192
199
<b>-v</b> Show the SMTP conversations.
198
205
<b>-W</b> <i>command:delay[:odds]</i>
199
Wait <i>delay</i> seconds before responding to <i>command</i>.
200
If <i>odds</i> is also specified (a number between 1-99
201
inclusive), wait for a random multiple of <i>delay</i>.
202
The random multiplier is equal to the number of
206
Wait <i>delay</i> seconds before responding to <i>command</i>.
207
If <i>odds</i> is also specified (a number between 1-99
208
inclusive), wait for a random multiple of <i>delay</i>.
209
The random multiplier is equal to the number of
203
210
times the program needs to roll a dice with a range
204
of 0..99 inclusive, before the dice produces a
211
of 0..99 inclusive, before the dice produces a
205
212
result greater than or equal to <i>odds</i>.
207
214
[<b>inet:</b>][<i>host</i>]:<i>port</i>
208
Listen on network interface <i>host</i> (default: any
215
Listen on network interface <i>host</i> (default: any
209
216
interface) TCP port <i>port</i>. Both <i>host</i> and <i>port</i> may be
210
217
specified in numeric or symbolic form.
213
220
Listen on the UNIX-domain socket at <i>pathname</i>.
216
The maximum length the queue of pending connec-
223
The maximum length the queue of pending connec-
217
224
tions, as defined by the <b>listen</b>(2) system call.
219
226
<b>DUMP FILE FORMAT</b>
220
Each dumped message contains a sequence of text lines,
221
terminated with the newline character. The sequence of
227
Each dumped message contains a sequence of text lines,
228
terminated with the newline character. The sequence of
222
229
information is as follows:
224
231
<b>o</b> The optional string specified with the <b>-S</b> option.
226
<b>o</b> The <b>smtp-sink</b> generated headers as documented
233
<b>o</b> The <b>smtp-sink</b> generated headers as documented
229
<b>o</b> The message header and body as received from the
236
<b>o</b> The message header and body as received from the
232
239
<b>o</b> An empty line.
234
The format of the <b>smtp-sink</b> generated headers is as fol-
241
The format of the <b>smtp-sink</b> generated headers is as fol-
237
244
<b>X-Client-Addr:</b> <i>text</i>
238
245
The client IP address without enclosing []. An IPv6
239
address is prefixed with "ipv6:". This record is
246
address is prefixed with "ipv6:". This record is
242
249
<b>X-Client-Proto:</b> <i>text</i>
243
The client protocol: SMTP, ESMTP or LMTP. This
250
The client protocol: SMTP, ESMTP or LMTP. This
244
251
record is always present.
246
253
<b>X-Helo-Args:</b> <i>text</i>
247
The arguments of the last HELO or EHLO command
248
before this mail delivery transaction. This record
249
is present only if the client sent a recognizable
254
The arguments of the last HELO or EHLO command
255
before this mail delivery transaction. This record
256
is present only if the client sent a recognizable
250
257
HELO or EHLO command before the DATA command.
252
259
<b>X-Mail-Args:</b> <i>text</i>
253
260
The arguments of the MAIL command that started this
254
mail delivery transaction. This record is present
261
mail delivery transaction. This record is present
257
264
<b>X-Rcpt-Args:</b> <i>text</i>
258
The arguments of an RCPT command within this mail
259
delivery transaction. There is one record for each
260
RCPT command, and they are in the order as sent by
265
The arguments of an RCPT command within this mail
266
delivery transaction. There is one record for each
267
RCPT command, and they are in the order as sent by
263
270
<b>Received:</b> <i>text</i>
264
A message header for compatibility with mail pro-
265
cessing software. This three-line header marks the
266
end of the headers provided by <b>smtp-sink</b>, and is
271
A message header for compatibility with mail pro-
272
cessing software. This three-line header marks the
273
end of the headers provided by <b>smtp-sink</b>, and is
267
274
formatted as follows:
269
276
<b>from</b> <i>helo</i> <b>([</b><i>addr</i><b>])</b>
270
277
The HELO or EHLO command argument and client
271
278
IP address. If the client did not send HELO
272
or EHLO, the client IP address is used
279
or EHLO, the client IP address is used
275
282
<b>by</b> <i>host</i> <b>(smtp-sink) with</b> <i>proto</i> <b>id</b> <i>random</i><b>;</b>
276
The hostname specified with the <b>-h</b> option,
277
the client protocol (see <b>X-Client-Proto</b>
283
The hostname specified with the <b>-h</b> option,
284
the client protocol (see <b>X-Client-Proto</b>
278
285
above), and the pseudo-random portion of the
279
286
per-message capture file name.