In-line delivery

From Halon, SMTP software for hosting providers
Revision as of 17:17, 29 August 2017 by Anders (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The Halon platform is capable of doing queue-less, in-line delivery resulting in

  • fully fail-safe, fault-tolerant SMTP transactions
  • fully elimination of backscatter problems
  • fully transferring the responsibility of error reporting and queuing to the sender

This feature allows the system to fail (hardware failure, etc) at any moment during operation without the risk of loosing any data. The implementation will not confirm message acceptance (220 OK) until the message is accepted by the receiving backend mail server.

Enabling in-line delivery

Enabling in-line instead of queued delivery is as simple as setting the Deliver function's queue argument to false.

The feature has a few defined limitations, in order to prevent odd behaviours such as message duplication and unknown message delivery statuses on multiple recipients. These limitations usually cause an runtime exception, and include:

  • Delivery has to be made to a single backend server (it cannot operate in lookup-mx/outbound mode)
  • Per-recipient modification to a single message cannot be done (eg. SetHeader("X-Recipient", $recipient))
  • If one recipient fails (because of the backend server), the message will not be delivered (solved by enabling recipient filtering in the RCPT TO script).