SMTP-SOURCE(1)                                                  SMTP-SOURCE(1)

NAME
       smtp-source - 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  paral-
       lel. 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 main-
       tain 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@myhostname>).

       -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 myhostname
              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  local-
              part  specified  with  the  -t option. This avoids an artificial
              100% hit rate in the trivial-rewrite daemon's  resolve  and  re-
              write  client  caches,  better approximating Postfix performance
              under real-life work-loads.

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

       -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).  Generate each recipient address  by  appending  a
              number  (a  per-connection  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 local-
              part, as in "-t localpart+@domain" or "-t localpart+", where "+"
              is the recipient address delimiter.

       -R interval
              Wait  a random time (0 <= n <= interval) between messages.  Sus-
              pending 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@myhostname>).

       -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

                                                                SMTP-SOURCE(1)