Net::SMTP

NET::SMTP(1)          User Contributed Perl Documentation         NET::SMTP(1)



NAME
       Net::SMTP - Simple Mail transfer Protocol Client

SYNOPSIS
           use Net::SMTP;

           # Constructors
           $smtp = Net::SMTP->new('mailhost');
           $smtp = Net::SMTP->new('mailhost', Timeout => 60);


DESCRIPTION
       This module implements a client interface to the SMTP protocol,
       enabling a perl5 application to talk to SMTP servers. This
       documentation assumes that you are familiar with the SMTP protocol
       described in RFC821.

       A new Net::SMTP object must be created with the new method. Once this
       has been done, all SMTP commands are accessed through this object.

EXAMPLES
       This example prints the mail domain name of the SMTP server known as
       mailhost:

           #!/usr/local/bin/perl -w

           use Net::SMTP;

           $smtp = Net::SMTP->new('mailhost');

           print $smtp->domain,"\n";

           $smtp->quit;

       This example sends a small message to the postmaster at the SMTP server
       known as mailhost:

           #!/usr/local/bin/perl -w

           use Net::SMTP;

           $smtp = Net::SMTP->new('mailhost');

           $smtp->mail($ENV{USER});

           $smtp->to('postmaster');

           $smtp->data();

           $smtp->datasend("To: postmaster\n");
           $smtp->datasend("\n");
           $smtp->datasend("A simple test message\n");

           $smtp->dataend();

           $smtp->quit;


CONSTRUCTOR
       new ( [ HOST, ] [ OPTIONS ] )
           This is the constructor for a new Net::SMTP object. HOST is the
           name of the remote host to which a SMTP connection is required.

           If HOST is not given, then the SMTP_Host specified in Net::Config
           will be used.

           OPTIONS are passed in a hash like fasion, using key and value
           pairs.  Possible options are:

           Hello - SMTP requires that you identify yourself. This option
           specifies a string to pass as your mail domain. If not given a
           guess will be taken.

           Timeout - Maximum time, in seconds, to wait for a response from the
           SMTP server (default: 120)

           Debug - Enable debugging information

           Example:

               $smtp = Net::SMTP->new('mailhost',
                                      Hello => 'my.mail.domain'
                                     );


METHODS
       Unless otherwise stated all methods return either a true or false
       value, with true meaning that the operation was a success. When a
       method states that it returns a value, falure will be returned as undef
       or an empty list.

       domain ()
               Returns the domain that the remote SMTP server identified
               itself as during connection.

       hello ( DOMAIN )
               Tell the remote server the mail domain which you are in using
               the HELO command.

       mail ( ADDRESS )

       send ( ADDRESS )

       send_or_mail ( ADDRESS )

       send_and_mail ( ADDRESS )
               Send the appropriate command to the server MAIL, SEND, SOML or
               SAML. ADDRESS is the address of the sender. This initiates the
               sending of a message. The method recipient should be called for
               each address that the message is to be sent to.

       reset ()
               Reset the status of the server. This may be called after a
               message has been initiated, but before any data has been sent,
               to cancel the sending of the message.

       recipient ( ADDRESS [, ADDRESS [ ...]] )
               Notify the server that the current message should be sent to
               all of the addresses given. Each address is sent as a separate
               command to the server.  Should the sending of any address
               result in a failure then the process is aborted and a false
               value is returned. It is up to the user to call reset if they
               so desire.

       to ()   A synonym for recipient

       data ( [ DATA ] )
               Initiate the sending of the data fro the current message.

               DATA may be a reference to a list or a list. If specified the
               contents of DATA and a termination string ".\r\n" is sent to
               the server. And the result will be true if the data was
               accepted.

               If DATA is not specified then the result will indicate that the
               server wishes the data to be sent. The data must then be sent
               using the datasend and dataend methods defined in Net::Cmd.

       expand ( ADDRESS )
               Request the server to expand the given address Returns a
               reference to an array which contains the text read from the
               server.

       verify ( ADDRESS )
               Verify that ADDRESS is a legitimate mailing address.

       help ( [ $subject ] )
               Request help text from the server. Returns the text or undef
               upon failure

       quit () Send the QUIT command to the remote SMTP server and close the
               socket connection.

SEE ALSO
       the Net::Cmd manpage

AUTHOR
       Graham Barr <Graham.Barr@tiuk.ti.com>

COPYRIGHT
       Copyright (c) 1995 Graham Barr. All rights reserved. This program is
       free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.




3rd Berkeley Distribution    perl 5.003, patch 07                 NET::SMTP(1)