I do exactly this, but I use the mail system
to do it (i.e. you don't need a perl script).
I have found qmail to be perfectly suited to
this task. Qmail will allow any user to control
an entire domain or even several domains. I
use a script called qmtppull that gets mail from
a remote mailbox and injects it into the local
mail system, where it gets delivered normally.
This isn't really a perl answer, but
sometimes there are better ways to do it and I
think that this is one of them. I brought this
up because I was going to try doing this job with
perl, but found (in my case anyway) a better
way.