Changes for version 1.11 - 2009-03-06

  • Move IMAP-UTF-7 handling into model's ->split, so it runs for _all_ client-given input. Then adjust ->handle_command to be able to send specific messages to the client on some exceptions. Reported by Jan Dvorak <jdvorak@uikt.mendelu.cz>.
  • Add a case for the suspected edge case where a timeout or printing error is discovered while handling a command
  • Upper-case command name in "command not recognized" to not leak implementation as much

Modules

A single-threaded multiplexing IMAP server implementation, using Net::Server::Coro.
A command in the IMAP server
Connection to a client
Encapsulates per-connection authorization information for an IMAP user.
Encapsulates per-connection information about the layout of IMAP folders.
A user's view of a mailbox
Represents a message stored in a user's mailbox

Provides

in lib/Net/IMAP/Server/Command/Append.pm
in lib/Net/IMAP/Server/Command/Authenticate.pm
in lib/Net/IMAP/Server/Command/Capability.pm
in lib/Net/IMAP/Server/Command/Check.pm
in lib/Net/IMAP/Server/Command/Close.pm
in lib/Net/IMAP/Server/Command/Copy.pm
in lib/Net/IMAP/Server/Command/Create.pm
in lib/Net/IMAP/Server/Command/Delete.pm
in lib/Net/IMAP/Server/Command/Examine.pm
in lib/Net/IMAP/Server/Command/Expunge.pm
in lib/Net/IMAP/Server/Command/Fetch.pm
in lib/Net/IMAP/Server/Command/Id.pm
in lib/Net/IMAP/Server/Command/List.pm
in lib/Net/IMAP/Server/Command/Login.pm
in lib/Net/IMAP/Server/Command/Logout.pm
in lib/Net/IMAP/Server/Command/Lsub.pm
in lib/Net/IMAP/Server/Command/Namespace.pm
in lib/Net/IMAP/Server/Command/Noop.pm
in lib/Net/IMAP/Server/Command/Rename.pm
in lib/Net/IMAP/Server/Command/Search.pm
in lib/Net/IMAP/Server/Command/Select.pm
in lib/Net/IMAP/Server/Command/Starttls.pm
in lib/Net/IMAP/Server/Command/Status.pm
in lib/Net/IMAP/Server/Command/Store.pm
in lib/Net/IMAP/Server/Command/Subscribe.pm
in lib/Net/IMAP/Server/Command/Uid.pm
in lib/Net/IMAP/Server/Command/Unsubscribe.pm