Improving MTA integration

October 24, 2016 at 12:00 PM | categories: Baruwa Enterprise, Baruwa, Exim, Baruwa 2.0


Baruwa operates by accepting messages using an inbound MTA, performing SMTP time checks on those messages and then queuing them for the Scanner process to run further checks and then take actions based on the configured policies.

The inbound MTA is a custom version of the venerable Exim MTA. At the moment, the above is achieved using a hack to the Exim configuration to defer all messages to allow for the scanner to pick them up.

The queuefile transport

To modernize and streamline this process we designed and built a new Exim transport which has been accepted by the Exim upstream and will be part of the 4.88 release.

This new transport is called queuefile and eleminates the need for the above hack. It queues the MTA files to a location accessible by the scanner and correctly updates the retry and delivery databases.

The transport eliminates the need to keep cleaning up the Exim retry and delivery databases as well as the edge cases where there are locking issues between the MTA and the Scanner processes.

The queuefile transport will be a key feature in our upcoming Baruwa-Scanner and Incwadi solutions and will improve the efficiency and speed at which messages are processed.


We plan to introduce the queuefile transport in our BaruwaOS 6.8.1 release.