qpsmtpd Wiki


You are here: start » playground » new_start


You are currently not logged in! Enter your authentication credentials below to log in. You need to have cookies enabled to log in.


You don't have an account yet? Just get one: Register

Forgotten your password? Get a new one: Set new password

qpsmtpd Wiki

qpsmtpd is a flexible smtpd daemon written in Perl. Apart from the core SMTP features, all functionality is implemented in small “extension plugins” using the easy to use object oriented plugin API.

What is qpsmtpd

The qpsmtpd daemon started as a replacement daemon for the SMTP receiver (qmail-smtpd) from the qmail mail transport agent (MTA). The qmail-smtpd receiver has a number of shortcomings including being unable to check the validity of a recipient mail address. It is also written in C which makes it burdensome to modify and extend. The qpsmtpd daemon, on the other hand, is written in pure Perl and can be customized easily. It consists of a core that implements a complete SMTP server, and a number of plugins/modules which control the operations. Such plugins include plugins to check the recipient and sender as well as plugins for virus scanning, spam checking, blocking lists (dns and rhs), AUTH and TLS. Qpsmtpd can not only be used with qmail but also with other MTAs including Postfix and Exim. It can also write messages to a Maildir or forward it to a remote host without buffering.

Put simply: by tweaking the plugins, you can adapt Qpsmtpd to almost any environment and task.

Getting qpsmtpd

If you are running a production server then you should use the latest stable version.

If you are able to program in Perl then you might want to checkout a copy of the latest stable version.

If you want to implement the Danga based high performance pollserver version checkout a copy of the svn trunk. This is currently considered unstable.

If you want to live on the bleeding edge then you might want to checkout a copy of the svn trunk.