sending email with perl

Jeffrey Goldberg jeffrey at goldmark.org
Sun May 6 16:58:22 UTC 2007


On May 6, 2007, at 10:48 AM, Olivier Regnier wrote:

> Hello,
>
> I written a small script in perl to send email.
>
> Here is the code:
>
> #!/usr/bin/perl -w
> use strict;
> use warnings;
> use MIME::Lite;
>
> my $msg = new MIME::Lite
> From =>'me at domain.tld',
> To =>'me at domain.tld',
> Subject =>'test',
> Type =>'TEXT',
> Data =>'Hello this is a test';
> $msg -> send;
>
> I have a .mailrc file :
> set sendmail="/root/scripts/nbsmtp.sh"

Perl isn't going to know or care about what is in your .mailrc file.

You should replace

   $msg -> send

with something like

   $msg -> send || die "Could not send: $!"

to at least get some idea of where the send attempt is failing


> I installed a small mta nbsmtp and i use a shell script called  
> nbsmtp.sh with this line :
> /usr/local/bin/nbsmtp -f me at domain.tld -h ssl0.ovh.net -d elipse -p  
> 465 -U postmaster at domain.tld -P password -M l -s -V

I don't know anything about nbsmtp, but if it sets up an SMTP daemon  
on localhost then you can use the perl module Mail:Mailer to set up  
the mailer with something like

   $mailer = new  Mail::Mailer 'smtp', Server => 'localhost' ;

-j


-- 
Jeffrey Goldberg                        http://www.goldmark.org/jeff/



More information about the freebsd-questions mailing list