Why does ListManager not use Sendmail?

Aurea List Manager relies on its own sending and receiving mailer instead of Sendmail. Why is this?

Out of many, the major problem with list managers is maintenance. With Aurea List Manager having its own mailer, it knows exactly what the problem is whenever it occurs. Also, if Aurea List Manager used Sendmail to receive email, it would have to rewrite Sendmail's /etc/aliases file.

Aurea List Manager has a unique procedure for mail sending efficiency as compared to other list managers. The other list managers send one message to a list, and use a huge BCC: list to get it out. When someone posts to a mailing list, exactly the same message is sent to every member of the list. The problem with this approach is that when permanent failures come back, it is very difficult to determine which user bounced it, because every message was the same.

Aurea List Manager makes every message unique, with an X-Lyris-Member-ID and X-Lyris-Member-Name SMTP header. Then, when a permanent failure message comes in, it becomes very easy to tell where it occurred and to automatically process them.

If you have sent every message uniquely with Sendmail, you would get very little mail out, as Sendmail forks (makes a completely new copy of itself in memory) for each message, and so the number of concurrent copies of Sendmail you can run is fairly small. The Aurea List Manager mailer is multi threaded, so it takes up very little memory for each message sent and very little CPU time. Aurea List Manager can run several thousand concurrent mail sends, even on a 64MB machine.

We also see reduced message delivery time, as a result of the low CPU demands and efficient memory usage.

The decision to leave Sendmail behind was crucial to the design of Aurea List Manager. It coexists with Sendmail on the same machine. But, it does not use Sendmail for its own mail operations.

If you are running Sendmail or some other mail transfer agent, Aurea List Manager relocates it to another TCP/IP port, and take over SMTP port 25. Aurea List Manager first receives all incoming mail. If the incoming mail is not addressed to a Aurea List Manager email address, Aurea List Manager automatically passes the email off to the relocated Sendmail program that processes it as normal. With this technique, both Aurea List Manager and Sendmail can coexist on the same machine, and there are no strange configuration tricks to play.

Having our own mailer means we can easily support many different operating systems, since we do not have to rely on the eccentricities of each platform's different mailing methods.