Sendmail 8.13.3 Programmer's Guide
Table Of Contents

Introduction
Communication Between an MTA and Milter
Chapter 1 7
Communication Between an MTA and Milter
Filter applications run as separate processes outside the Sendmail
address space. The benefits of filter applications running as separate
processes are as follows:
• Filter applications do not need to run with "root" permissions,
thereby, avoiding a large family of potential security problems.
• Failures in a particular filter do not affect Sendmail or other filters.
• Filter applications can have high performance because of the
parallelism inherent in multiple processes.
Each filter can communicate with multiple MTAs at the same time over
local or remote connections, using multiple threads of execution.
Figure 1-1 illustrates a network of communication channels between the
filters, its MTAs, and other MTAs on the network.
Figure 1-1 Communication Channel Between MTAs and Filters
The Milter library (libmilter.a) implements the communication
protocol. It accepts connections from various MTAs and passes the
relevant data to the filter through callbacks.
MTA
MTA
MTA
Filter 1
Filter 2
Filter 3
Internet