in reply to Re: Net::SMTP - Authentication Problem
in thread Net::SMTP - Authentication Problem

I tried SMTP_auth as you have suggested. It also fails. I check this in the system in which Net::SMTP works, it works in that system precisely.

Kindly let me know if you have any suggestions.

Thanks

  • Comment on Re^2: Net::SMTP - Authentication Problem

Replies are listed 'Best First'.
Re^3: Net::SMTP - Authentication Problem
by zentara (Cardinal) on Aug 29, 2006 at 16:45 UTC
    One of the things I can think of, is the auth_type is wrong. I showed a 'LOGIN' auth_type, but there is a choice of PLAIN, LOGIN, or CRAM-MD5.

    Also try turning on Debug and see if you can catch the error.

    my $smtp = Net::SMTP_auth->new($Servername, Port=>$Port, Debug => 1 );

    You also might want to capture the transaction with ethereal or tcpick

    Did you ever consider the other system dosn't support SMTP auth? Or the port it runs it on is different from the working system? Many systems run auth on port 587, but they can put it wherever they want.


    I'm not really a human, but I play one on earth. Cogito ergo sum a bum

      Hi

      In the system in which SMTP is not working thru perl, I tried with PHP. It works precisely with PHP. Here is the PHP code:

      <?php require("class.phpmailer.php"); $mail = new PHPMailer(); $mail->IsSMTP(); // set mailer to + use SMTP $mail->Host = "pop.myserver.com"; // specify main and backup server $mail->SMTPAuth = true; // turn on SMTP authentication $mail->Username = "srikanth"; // SMTP username $mail->Password = "mypass"; // SMTP password $mail->From = "from@somedomain.com"; $mail->AddAddress("to@somedomain.com"); // name is op +tional $mail->Subject = "Here is the subject"; $mail->Body = "This is the HTML message body"; $mail->AltBody = "This is the body in plain text for non-HTML mail cli +ents"; if(!$mail->Send()) { echo "Message could not be sent."; } else { echo "Message has been sent"; } ?>

      And, here is the debug=>1 output by Perl:

      Net::SMTP_auth>>> Net::SMTP_auth(0.08) Net::SMTP_auth>>> Net::SMTP(2.29) Net::SMTP_auth>>> Net::Cmd(2.26) Net::SMTP_auth>>> Exporter(5.58) Net::SMTP_auth>>> IO::Socket::INET(1.31) Net::SMTP_auth>>> IO::Socket(1.30) Net::SMTP_auth>>> IO::Handle(1.27) Net::SMTP_auth=GLOB(0x81faaa8)<<< 220 ESMTP Net::SMTP_auth=GLOB(0x81faaa8)>>> EHLO localhost.localdomain Net::SMTP_auth=GLOB(0x81faaa8)<<< 250-pop.myserver.com Net::SMTP_auth=GLOB(0x81faaa8)<<< 250-PIPELINING Net::SMTP_auth=GLOB(0x81faaa8)<<< 250-SIZE 20480000 Net::SMTP_auth=GLOB(0x81faaa8)<<< 250-VRFY Net::SMTP_auth=GLOB(0x81faaa8)<<< 250-ETRN Net::SMTP_auth=GLOB(0x81faaa8)<<< 250-AUTH PLAIN LOGIN Net::SMTP_auth=GLOB(0x81faaa8)<<< 250 8BITMIME Unknown callback: 'authname'. (user|auth|language|pas

      Also I have tried PLAIN & CRAM-MD5 apart from LOGIN

      Any suggestion?

      Thanks
      Srikanth

        Since the error is "Unknown callback: 'authname' ", I searched Net::SMTP and Net::SMTP_auth for 'authname' to see where it is used.

        authname dosn't appear in the 2.08 version of Authen::SASL, but does in Authen-SASL-2.10, where it is metioned in the Changes file.

        Maybe you need to upgrade to the latest Authen-SASL-2.10 ?


        I'm not really a human, but I play one on earth. Cogito ergo sum a bum