Como cada arquivo em um Maildir já é uma mensagem de e-mail completa, é simples configurar uma sessão SMTP para o servidor de e-mail do Zoho e entregar essas mensagens novamente.
Um pouco trivial de perl:
#!/usr/bin/perl -w
#
## purpose: send the contents of a Maildir over SMTP
##
## usage: perl this_program
#
my $MAILDIR = '/home/hbruijn/Maildir/cur/' ;
# The mailserver to deliver the messages to:
my $MAILHOST = 'smtp.example.com' ;
# The email address of the recipient on $MAILHOST:
my $RECIPIENT = '[email protected]' ;
# The email address of the sender in the SMTP envelope and the one to receive errors and bounces:
my $SENDER = '[email protected]' ;
use Net::SMTP;
foreach my $MESSAGE (glob("$MAILDIR/*")) {
printf "%s\n", $MESSAGE;
my $smtp = Net::SMTP->new($MAILHOST);
$smtp->mail($SENDER);
if ($smtp->to($RECIPIENT)) {
$smtp->data();
open my $fh, "<", $MESSAGE or die "can't read open '$MESSAGE': $OS_ERROR";
while (<$fh>) {
$smtp->datasend($_);
}
$smtp->dataend();
close $fh or die "can't read close '$MESSAGE': $OS_ERROR";
} else {
print "Error: ", $smtp->message();
};
$smtp->quit;
}
Os trabalhos acima, mas são bastante crus, podem desencadear medidas anti-spam e definitivamente podem ser otimizados de várias maneiras.