    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     Prepend  a  non-repeating  sequence  number  to  each  recipient
                  address. This avoids the artificial 100% hit rate in the resolve
                  and rewrite client caches and exercises the trivial-rewrite dae-
                  mon, better approximating Postfix  performance  under  real-life
                  work-loads.

           -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).  Recipient names are  generated  by  prepending  a
                  number to the recipient address.

           -R interval
                  Wait for a random period of time 0 <= n <= interval between mes-
                  sages.  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@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)