smtp-source - Man Page

parallelized SMTP/LMTP test generator

Synopsis

smtp-source [options] [inet:]host[:port]

smtp-source [options] unix:pathname

Description

smtp-source connects to the named host and TCP port (default: port 25) and sends one or more messages to it, either sequentially or in parallel. The program speaks either SMTP (default) or LMTP. Connections can be made to UNIX-domain and IPv4 or IPv6 servers. IPv4 and IPv6 are the default.

Note: this is an unsupported test program. No attempt is made to maintain compatibility between successive versions.

Arguments:

-4

Connect to the server with IPv4. This option has no effect when Postfix is built without IPv6 support.

-6

Connect to the server with IPv6. This option is not available when Postfix is built without IPv6 support.

-A

Don't abort when the server sends something other than the expected positive reply code.

-c

Display a running counter that is incremented each time an SMTP DATA command completes.

-C count

When a host sends RESET instead of SYN|ACK, try count times before giving up. The default count is 1. Specify a larger count in order to work around a problem with TCP/IP stacks that send RESET when the listen queue is full.

-d

Don't disconnect after sending a message; send the next message over the same connection.

-f from

Use the specified sender address (default: <foo@my-hostname>).

-F file

Send the pre-formatted message header and body in the specified file, while prepending '.' before lines that begin with '.', and while appending CRLF after each line.

-l length

Send length bytes as message payload. The length does not include message headers.

-L

Speak LMTP rather than SMTP.

-m message_count

Send the specified number of messages (default: 1).

-M my-hostname

Use the specified hostname or [address] in the HELO command and in the default sender and recipient addresses, instead of the machine hostname.

-N

Generate each recipient address by appending a number (a per-process recipient counter) to the recipient address localpart specified with the -t option.

Note: to use the number as an address extension, specify an explicit address delimiter at the end of the recipient localpart, as in "-t localpart+@domain" or "-t localpart+", where "+" is a Postfix recipient address delimiter.

Benefits:

  • A non-constant recipient address avoids an unrealistic 100% cache hit rate in clients of the Postfix trivial-rewrite service, better approximating performance under real-life work-loads.
  • A fixed recipient address local-part with a non-constant address extension avoids the need to configure a large number of valid recipient addresses in the receiving Postfix server.
-o

Old mode: don't send HELO, and don't send message headers.

-r recipient_count

Send the specified number of recipients per transaction (default: 1), and generate recipient addresses as described under the -N option.

-R interval

Wait a random time (0 <= n <= interval) between messages. Suspending one thread does not affect other delivery threads.

-s session_count

Run the specified number of SMTP sessions in parallel (default: 1).

-S subject

Send mail with the named subject line (default: none).

-t to

Use the specified recipient address (default: <foo@my-hostname>).

-T windowsize

Override the default TCP window size. To work around broken TCP window scaling implementations, specify a value > 0 and < 65536.

-v

Make the program more verbose, for debugging purposes.

-w interval

Wait a fixed time between messages. Suspending one thread does not affect other delivery threads.

[inet:]host[:port]

Connect via TCP to host host, port port. The default port is smtp.

unix:pathname

Connect to the UNIX-domain socket at pathname.

Bugs

No SMTP command pipelining support.

See Also

smtp-sink(1), SMTP/LMTP message dump

License

The Secure Mailer license must be distributed with this software.

Author(s)

Wietse Venema
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA

Wietse Venema
Google, Inc.
111 8th Avenue
New York, NY 10011, USA

Referenced By

posttls-finger(1), smtp-sink(1).