Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Net::SMTP - Unknown callback

3 views
Skip to first unread message

S P Arif Sahari Wibowo

unread,
May 15, 2008, 6:45:42 PM5/15/08
to
Hi!

I am trying to use Net::SMTP to send e-mail from a CGI script in
a hosting environment (not my own server). The server (which I
have control) requires authentication (naturally), and I already
tested that I can use Net::SMTP from other machine (not that
hosting) to connect and send e-mail through that server.

However, when I uploaded my script to the hosting environment,
the connecting effort dies with the error "Unknown callback:
'authname'. (user|auth|language|pass)".

This can be incompatible module, and I can install my own
module, but first I need to find out which module to install. I
already installed the newest libnet (1.22) and Authen::SASL
(2.11), but they did not help.

The perl version is a bit old - 5.008004 - not sure if this have
any effect. BTW I don't have any power to update that.

Any idea what causing this the error? Any suggestion?


Below is the part of the code doing the connect and
authentication:

if($debug) { print STDERR "going to connect to $ssph->{host}\n"; }
my $smtp= Net::SMTP->new
(Host=> $ssph->{host},
($ssph->{port} ? (Port=> $ssph->{port}) : ()),
($debug ? (Debug=> 1) : ())
) || die "open SMTP $ssph->{host}: ".$!;
if($debug) { print STDERR "connected to $ssph->{host}, going to auth\n"; }

if($ssph->{user} and $ssph->{pass}) {
$smtp->auth($ssph->{user}, $ssph->{pass}) || die "at auth: ".$smtp->message();
}
if($debug) { print STDERR "auth to $ssph->{host} successful\n"; }


This is the output:

going to connect to rinjani.parokinet.org
Net::SMTP>>> Net::SMTP(2.31)
Net::SMTP>>> Net::Cmd(2.29)
Net::SMTP>>> Exporter(5.58)
Net::SMTP>>> IO::Socket::INET(1.27)
Net::SMTP>>> IO::Socket(1.28)
Net::SMTP>>> IO::Handle(1.24)
Net::SMTP=GLOB(0x88bdfc8)<<< 220 rinjani.parokinet.org ESMTP Postfix
Net::SMTP=GLOB(0x88bdfc8)>>> EHLO localhost.localdomain
Net::SMTP=GLOB(0x88bdfc8)<<< 250-rinjani.parokinet.org
Net::SMTP=GLOB(0x88bdfc8)<<< 250-PIPELINING
Net::SMTP=GLOB(0x88bdfc8)<<< 250-SIZE 10240000
Net::SMTP=GLOB(0x88bdfc8)<<< 250-VRFY
Net::SMTP=GLOB(0x88bdfc8)<<< 250-ETRN
Net::SMTP=GLOB(0x88bdfc8)<<< 250-AUTH PLAIN LOGIN
Net::SMTP=GLOB(0x88bdfc8)<<< 250-AUTH=PLAIN LOGIN
Net::SMTP=GLOB(0x88bdfc8)<<< 250 8BITMIME
connected to rinjani.parokinet.org, going to auth

(then die with "Unknown callback: 'authname'. (user|auth|language|pass)")


Thanks!

--
(stephan paul) Arif Sahari Wibowo
_____ _____ _____ _____
/____ /____/ /____/ /____
_____/ / / / _____/ http://www.arifsaha.com/

にしむら

unread,
May 28, 2008, 7:57:05 PM5/28/08
to
I met same problem on SUSE Linux 10.1 last week.

Net::SMTP::SSL=GLOB(0x84d7d84)<<< 250-SIZE 28311552
Net::SMTP::SSL=GLOB(0x84d7d84)<<< 250-8BITMIME
Net::SMTP::SSL=GLOB(0x84d7d84)<<< 250-AUTH LOGIN PLAIN
Net::SMTP::SSL=GLOB(0x84d7d84)<<< 250 ENHANCEDSTATUSCODES


Unknown callback: 'authname'. (user|auth|language|pass)

My perl script run normally on windows vista.

I installed Authen::SASL 2.10 by CPAN on SUSE Linux 10.1.

But my server already be installed perl-Authen-SASL-2.09-11.i586.rpm.
Maybe confuse and perl used old version.

So, I uninstalled this package. Then resolved it.
I don't know workaround on hosting server.
but maybe refer to incorrect Authen::SASL module.

-- Yasuo NISHIMURA(PBC0...@gmail.com)

0 new messages