MeTA1 1.0.PreAlpha12.0 review
DownloadMeTA1 is a modularized message transfer agent consisting of five (or more) persistent processes, four of which are multi-threaded.
|
|
MeTA1 is a modularized message transfer agent consisting of five (or more) persistent processes, four of which are multi-threaded.
MeTA1 is a message transfer agent that has been designed with these main topics in minds:
Security
Reliability
Efficiency
Configurability
Extendibility
MeTA1 consists of five main modules of which only one runs as root:
mcp: the main control program is similar to inetd(8): it starts all other MeTA1 modules and watches over their execution. mcp runs as root in order to bind to port 25 and to change the uid of the processes it starts.
smtps: the SMTP server receives e-mails.
smtpc: the SMTP client sends e-mails.
smar: the address resolver provides lookups in various maps including DNS for mail routing.
qmgr: the queue manager controls the flow of e-mails through the SMTP servers and clients.
All of these modules run persistently. smtps and smtpc make use of the statethreads library which provides a threading API well suited for Internet applications, smar and qmgr use the POSIX threads API.
The syntax of the MeTA1 configuration file is very simple and resembles C programs or the BIND 9 configuration files. A configuration file does not require any special layout, e.g., tabs or one option per line, but relies on braces and semicolons as structuring elements.
The first release of MeTA1 is intended to be used as a secure and efficient mail gateway. It offers features that are not available in sendmail 8 (or some other open source MTAs), however, it does not provide any builtin support for mail content modification, e.g., masquerading of addresses or changing (addition, removal) of headers. Those features are currently only available via the pmilter API.
What's New in This Release:
The mailer table can now take flags to specify different types of lookups, including "full_address" to use the entire address as a key instead of just its domain.
The SMTP server is terminated if it cannot connect to the address resolver when a new SMTP connection is made.
This release logs a textual description of the exit(3) code in mcp when a program terminates instead of its numeric value.
It has better logging for invalid EHLO/HELO in smtps: it logs the command used and adds a stat= field.
MeTA1 1.0.PreAlpha12.0 keywords