Got it working after updating UPDATING TCPIP stack. I have noticed after I do a few operations or process a form with a fair amount of data I start getting this error :
Failed to open SMTP connection: Inappropriate I/O control operation
Could this be some sort of Buffer issue. Here is a small piece of test code I'm using to work on the problem :
#!/usr/bin/perl
use Net::SMTP; #Create a new object with 'new'. $smtp = Net::SMTP->new("10.102.10.74"); if ( ! $smtp ) { die "Failed to open SMTP connection: ", $!, "\n"; } #Send the MAIL command to the server.
$smtp->mail("[EMAIL PROTECTED]"); #Send the server the 'Mail To' address. $smtp->to("[EMAIL PROTECTED]"); #Start the message. $smtp->data(); #Send the message. $smtp->datasend("Subject: Console test Post tcp update Very Very Cruel World!\n\n"); $smtp->datasend("\n\n"); $smtp->datasend("Good bye Cruel World!\n\n"); #End the message. $smtp->dataend(); #Close the connection to your server. $smtp->quit(); >>> Guy Alston<[EMAIL PROTECTED]> 10/16/2008 5:19:33 PM >>> First of all thanks to everyone who has responded. I've run a few more test and the problem is clearly around "MOD_Perl". I've load an SMTP server on the same system where I'm running the apache server and the scripts fail to establish a session.
I'm able to run those scripts same scripts successfully from the console using the Netware Perl Interpreter. Both the Apache MOD_PERL and Netware NLM are 5.8.4 version of Perl. I'm running apache 2.0.59. on Netware 6.5 sp6.
>>> Philip M. Gollucci<[EMAIL PROTECTED]> 10/3/2008 10:34:12 AM >>>
Guy Alston wrote: Error message: > Can't call method "mail" on an undefined value at > sys:/perl/web/mailtest2.pl line 6. > > It's always a line containing " $smtp = Net::SMTP->new("smtpserver") Net::SMTP is known to work, though I'm not currently using it. You could add local $SIG{__WARN__} = \&Carp::cluck; local $SIG{__DIE__} = \&Carp::confess; This will help tell you where in Net::SMTP you are having a problem. Once you know that, you can try to fix it. OR this works -- use MIME::Lite (); sub email { my %args = @_; my $email = MIME::Lite->new( Type => 'multipart/mixed' ); $email->add(To => $args{to}); $email->add(BCC => $args{bcc}); $email->add(From => $args{from}); $email->add(Subject => $args{subject}); $email->attach(Type => "TEXT", Data ="" $args{data}); MIME::Lite->send('smtp', SMTP_HOST, Timeout => 5); eval { $email->send }; return $@; } > > I tried many different scripts but it always seems to be a problem > around the object utilizing "Net::SMTP;. Is there a known issue with > this. My version of MOD_PERL is 1.01.00 Was I even alive when this version of mod_perl was out ? Given that, more importantly, what version of perl are you using ? |
- Mod_Perl and Net::SMTP Guy Alston
- Re: Mod_Perl and Net::SMTP Philip M. Gollucci
- Re: Mod_Perl and Net::SMTP Guy Alston
- Re: Mod_Perl and Net::SMTP Guy Alston
- Re: Mod_Perl and Net::SMTP Guy Alston