jonadab has asked for the wisdom of the Perl Monks concerning the following question:
For assorted reasons, I've been contemplating putting together a sort of proxy for email. It would use Mail::POP3Client to retrieve stuff from the real server, possibly filter it, possibly annotate it with a header, and store it (probably one file for each message in a directory for each user account) along with some metadata (e.g., when it was pulled down from the server, which clients have retrieved it, and so forth) and then allow real mail clients to retrieve the messages. The messages would be permanently stored but would not be given to the same client app twice. (Thus, I could get my mail on more than one PC, test out beta mail clients, and so forth.) I would be writing it in a modular and hopefully extensible fashion so that it could be reused for things like spam filtering. As an added bonus, it could retrieve from the server on a cron job and so keep the ISP account from filling up if you take to long getting around to getting your mail (say, if you go away on vacation).
The part I need help with is serving out the mail. I tried to search CPAN for a mail server module, but I didn't find one. Maybe I used the wrong search words? I found an SMTP server module, but that won't help; I need POP3 or IMAP -- ideally both. My code can handle the logic of determining what messages are available and retrieving them from storage and so on, but I was hoping to find a module to handle the actual protocol(s). There's plenty of code on CPAN for the client side of these protocols, but I'm not finding POP3 or IMAP servers. There's Net::Server, of course, but do I really have to bite the bullet and implement the protocol RFCs?
$;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b->()}} split//,".rekcah lreP rehtona tsuJ";$\=$ ;->();print$/
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Modules for _serving_ email
by b10m (Vicar) on Dec 30, 2003 at 18:33 UTC | |
by jonadab (Parson) on Dec 30, 2003 at 19:35 UTC | |
|
Re: Modules for _serving_ email
by jonadab (Parson) on Jan 02, 2004 at 23:49 UTC |