NAME

Mail::POP3 -- a module implementing a full POP3 server

SYNOPSIS

use Mail::POP3;
my $config_text = Mail::POP3->from_file($config_file);
my $config = Mail::POP3->read_config($config_text);
Mail::POP3->make_sane($config);
while (my $sock = $server_sock->accept) {
  my $server = Mail::POP3::Server->new(
    $config,
  );
  $server->start(
    $sock,
    $sock,
    $sock->peerhost,
  );
}

DESCRIPTION

Mail::POP3 and its associated classes work together as follows:

This last characteristic means that diverse sources of information can be served up as though they are a POP3 mailbox by implementing a Mail::POP3::Folder subclass. An example is provided in Mail::POP3::Folder::webscrape, and included is a working configuration file that makes the server connect to Jobserve (as of Jan 2014) and provide a view of jobs as email messages in accordance with the username which provides a colon-separated set of terms: keywords (encoding spaces as +), location radius in miles, location (e.g. Berlin). E.g. the username perl:5:Berlin would search for jobs relating to Perl within 5 miles of Berlin.

OVERVIEW

Mail::POP3 is a working POP3 server module, with a working mpopd that can either work as a standalone, be called from inetd, or be used in non-forking mode for use on Windows platforms that do not do forking correctly.

SCRIPTS

DESIGN

This last characteristic means that diverse sources of information can be served up as though they are a POP3 mailbox by implementing a M::P::F subclass. An example is provided in M::P::F::webscrape.

FUTURE

This module will become a Net::Server subclass, such that the Folder functionality will be folded back into the server, in a class called (probably) Net::Server::POP3::webscrape (etc).

METHODS

All class methods.

from_file

Given a file, returns contentx.

make_sane

Mutates given config hashref to have good, default values.

read_config

Given config text, evals it then version-checks.

COPYRIGHT

Copyright (c) Mark Tiramani 1998-2001 - up to version 2.21. Copyright (c) Ed J 2001+ - version 3+. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

DISCLAIMER

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Artistic License for more details.