As
Kanji suggests, use Net::SMTP. I used the following code and it worked for the three messages I had in my pop3 account but I haven't extensively tested it:
# ...
use Net::SMTP;
my $smtp = Net::SMTP->new(Debug => 1,
# other stuff
);
# ...
for $msg_id (keys(%$Messages)) {
print "Retrieving Msg: $msg_id\n";
my $MsgContent = $pop3->get($msg_id);
# Here's where I'd like to forward it on..
$smtp->mail($resentby);
$smtp->to($target);
$smtp->data();
for (@$MsgContent) {
$smtp->datasend($_);
}
$smtp->dataend();
}
$smtp->quit;
The debug mode will help pinpoint problems. If you get a "broken pipe" message, then one of your supplied arguments ($smtp->mail or $smtp->to) is most likely the culprit.
--Jim