I have a script using Net::POP3 to pop mail off a pop3 server. I'd like to forward the mail to another e-mail account without having to use postfix, or even write it to a file. I haven't been able to get it done.
Here's what I have so far:
#!/usr/local/bin/perl
#
# using pop3get -c will leave the mail on the server.
#
use Net::POP3;
use Getopt::Long;
use strict 'vars';
use vars qw($opt_c);
GetOptions("c!");
my $ServerName = "my.pop3server.com";
my $pop3 = Net::POP3->new($ServerName, Debug => 0);
my $UserName = "user";
my $Password = "pass";
my $inbox = "/export/homes/user/Mail/inbox";
my $msg_id;
die "Couldn't log on to server" unless $pop3;
my $Num_Messages = $pop3->login($UserName, $Password);
my $Messages = $pop3->list();
open FH, ">> $inbox" or die "Couldn't open inbox: ($!)\n";
for $msg_id (keys(%$Messages)) {
print "Retriving Msg: $msg_id\n";
my $MsgContent = $pop3->get($msg_id);
# Here's where I'd like to forward it on..
for (@$MsgContent) {
print FH $_;
}
my $delete_msg = $pop3->delete($msg_id) unless ($opt_c);
}
close FH;
$pop3->quit();