#!perl use strict; use warnings; use Mail::Sender; use Term::ReadKey; my ($mail_server, $id, $pswd); print "Enter SMTP mail server > "; chomp($mail_server = <>); $mail_server |= 'mail.Squirrel.org'; print "Enter user name > "; chomp($id = <>); print "Enter password > "; ReadMode( "noecho" ); chomp($pswd = <>); ReadMode( "restore" ); system('cls'); my $sender = new Mail::Sender { 'smtp' => $mail_server, 'from' => $id, 'auth' => 'CRAM-MD5', 'authid' => $id, 'authpwd' => $pswd, 'subject' => 'Birthday invitation', 'boundary' => 'A boring Multipart boundary', 'multipart' => 'mixed', 'encoding' => 'Quoted-printable', 'confirm' => 'reading', 'keepconnection' => 'true'}; $Mail::Sender::NO_X_MAILER = "true"; $pswd = 'Thought it, sucker!'; for () { my ($last, $first, $gender, $email) = split; $sender->OpenMultipart({ 'to' => "$first $last <$email>" }); ### line 40 $sender->( { 'Part' => 'multipart/alternative' } ); my $msg = <Part( { ctype => 'text/plain', encoding => 'iso-8859-1', msg => $msg }); $msg = < B'day invitation

Invitation

HTML message with Umlauts(äöü) to [fname]. END_OF_TEXT $msg =~ s/[fname]/$first/g; $sender->Part({ ctype => 'text/html', msg => $msg }); $sender->EndPart('multipart/alternative'); $sender->Close(); } $sender->close('all'); __DATA__ Squirrel Combat m Combat@Squirrel.org