Login | Register
My pages Projects Community openCollabNet

Project home

If you were registered and logged in, you could join this project.

Summary a modern, extensible and secure Internet mail infrastructure
Categories techcomm, construction
License GNU General Public License
Owner(s) arnaut

The DNetMail project aims to develop a morden, extensible, full featured Internet mail (SMTP/POP3/IMAP) infrastructure capable of handling millions of messages per day with full support for real-time e-mail analyzes.


  • Secure
  • Built from the ground up with security as a top priority, the core system only manages the protocol state machine and the hook dispatching machinery. Everything else is taken care by the hooks implemented using high-level safe languages. The core works as a powerful "virtual machine" sandboxing unsafe, complex and error-prone code. This approach improves security without losing functionality.

  • Customizable
  • Each DNetMail component has built-in support for Perl, Python or Ruby hooks for authentication and system configuration, the hooks also control message archiving, retrieval and filtering. It allows you to supply event hooks (script functions) that are invoked on significant steps used in manipulating, sending or receiving messages. All high-level functions and features are implemented using the hooks for safeness, extensibility or redefinition.

  • Extensible
  • Using the extensible library of functions available in Perl, Python or Ruby one can easily set up authentication against a database, LDAP directory or through PAM. There are also a number of hooks where real-time analysis of messages can be placed for spam and virus detection. You can also redefine the behavior of things like message persistence, quotas, error messages, header rewriting, you name it.

  • Efficient
  • The core system design maximizes concurrency and optimize performance by using an multi-processing architecture where a dynamic pool of small processes are responsible for managing client sessions and multiple hook interaction. One blocked hook does not stop the entire system.


The project is in the early phases of development and not expected to be finished soon, but your input is important. You are invited to join our mailing list and discuss requests or comments!

  • DNetCORE 80%
  • Almost done, missing a syslog logger and a SSL wrapper.

  • DNetPOP3 90%
  • Almost done, implementing Perl and Python sample hooks.

  • DNetSMTP 10%
  • Only the base is in place.

  • DNetIMAP 0%
  • Not started yet.