#!perl -w
# Copyright (C) all contributors <meta@public-inbox.org>
# License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
#
# Standalone POP3 server for public-inbox.
use v5.12;
use PublicInbox::Daemon;
PublicInbox::Daemon::run('pop3://0.0.0.0:110');
