xref: /freebsd/contrib/sendmail/libmilter/docs/index.html (revision e2c0e292e8a7ca00ba99bcfccc9e637f45c3e8b1)
1d0cef73dSGregory Neil Shapiro<HTML>
2d0cef73dSGregory Neil Shapiro<HEAD>
3d0cef73dSGregory Neil Shapiro<TITLE>Filtering Mail with Sendmail</TITLE>
4d0cef73dSGregory Neil Shapiro</HEAD>
5d0cef73dSGregory Neil Shapiro<BODY>
640266059SGregory Neil Shapiro<!--
7*4313cc83SGregory Neil Shapiro$Id: index.html,v 1.14 2013-11-22 20:51:39 ca Exp $
840266059SGregory Neil Shapiro-->
940266059SGregory Neil Shapiro
10d0cef73dSGregory Neil Shapiro<H1>Filtering Mail with Sendmail</H1>
1140266059SGregory Neil Shapiro
1240266059SGregory Neil Shapiro<!--
13d0cef73dSGregory Neil Shapiro<P><B>Disclaimer</B>:
1440266059SGregory Neil ShapiroThis preliminary API description is provided for review only.  This
1540266059SGregory Neil Shapirospecification may change based on feedback from reviewers, and does
1640266059SGregory Neil Shapironot bind Sendmail to offer this functionality in any release.
1740266059SGregory Neil Shapiro-->
1840266059SGregory Neil Shapiro
19d0cef73dSGregory Neil Shapiro<H2>Introduction</H2>
2040266059SGregory Neil Shapiro
2140266059SGregory Neil Shapiro<P>
2240266059SGregory Neil ShapiroSendmail's Content Management API (milter) provides third-party
2340266059SGregory Neil Shapiroprograms to access mail messages as they are being processed by the
2440266059SGregory Neil ShapiroMail Transfer Agent (MTA), allowing them to examine and modify message
2540266059SGregory Neil Shapirocontent and meta-information.  Filtering policies implemented by
2640266059SGregory Neil ShapiroMilter-conformant filters may then be centrally configured and
2740266059SGregory Neil Shapirocomposed in an end-user's MTA configuration file.
2840266059SGregory Neil Shapiro
29d0cef73dSGregory Neil Shapiro<P>
3040266059SGregory Neil ShapiroPossible uses for filters include spam rejection, virus
3140266059SGregory Neil Shapirofiltering, and content control.  In general, Milter seeks to address
3240266059SGregory Neil Shapirosite-wide filtering concerns in a scalable way.  Individual users' mail
3340266059SGregory Neil Shapirofiltering needs (e.g. sorting messages by subject) are left to
34d0cef73dSGregory Neil Shapiroclient-level programs such as <A href="http://www.procmail.org">Procmail</A>.
3540266059SGregory Neil Shapiro
3640266059SGregory Neil Shapiro<P>
3740266059SGregory Neil ShapiroThis document is a technical introduction intended for those
3840266059SGregory Neil Shapirointerested in developing Milter filters.  It includes:
39d0cef73dSGregory Neil Shapiro<UL>
40d0cef73dSGregory Neil Shapiro<LI>A description of Milter's design goals.
4140266059SGregory Neil Shapiro
42d0cef73dSGregory Neil Shapiro<LI>An explanation of Milter application architecture, including
4340266059SGregory Neil Shapirointeractions between the support library and user code, and between
4440266059SGregory Neil Shapirofilters and the MTA.
4540266059SGregory Neil Shapiro
46d0cef73dSGregory Neil Shapiro<LI>A specification of the C application programming interface.
47d0cef73dSGregory Neil Shapiro<LI>An example of a simple Milter filter.
48d0cef73dSGregory Neil Shapiro</UL>
4940266059SGregory Neil Shapiro
50d0cef73dSGregory Neil Shapiro<H2>Contents</H2>
5140266059SGregory Neil Shapiro
52d0cef73dSGregory Neil Shapiro<UL>
53d0cef73dSGregory Neil Shapiro<LI><A href="design.html">Architecture</A>
54d0cef73dSGregory Neil Shapiro<UL>
55d0cef73dSGregory Neil Shapiro    <LI>Design Goals
56d0cef73dSGregory Neil Shapiro    <LI>Implementing Filtering Policies
57d0cef73dSGregory Neil Shapiro    <LI>MTA - Filter communication
58d0cef73dSGregory Neil Shapiro</UL>
59d0cef73dSGregory Neil Shapiro<LI><A href="overview.html">Technical Overview</A>
60d0cef73dSGregory Neil Shapiro<UL>
61d0cef73dSGregory Neil Shapiro    <LI>Initialization
62d0cef73dSGregory Neil Shapiro    <LI>Control flow
63d0cef73dSGregory Neil Shapiro    <LI>Multithreading
64d0cef73dSGregory Neil Shapiro    <LI>Resource Management
65d0cef73dSGregory Neil Shapiro    <LI>Signal Handling
66d0cef73dSGregory Neil Shapiro</UL>
67d0cef73dSGregory Neil Shapiro<LI><A href="api.html">API Documentation</A>
68d0cef73dSGregory Neil Shapiro<UL>
69d0cef73dSGregory Neil Shapiro    <LI>Library Control Functions
70d0cef73dSGregory Neil Shapiro    <LI>Data Access Functions
71d0cef73dSGregory Neil Shapiro    <LI>Message Modification Functions
72d0cef73dSGregory Neil Shapiro    <LI>Callbacks
73d0cef73dSGregory Neil Shapiro</UL>
74d0cef73dSGregory Neil Shapiro<LI><A href="installation.html">Installation and Configuration</A>
75d0cef73dSGregory Neil Shapiro<UL>
76d0cef73dSGregory Neil Shapiro    <LI>Compiling and Installing Your Filter
77d0cef73dSGregory Neil Shapiro    <LI>Configuring Sendmail
78d0cef73dSGregory Neil Shapiro</UL>
79d0cef73dSGregory Neil Shapiro<LI><A href="sample.html">A Sample Filter</A>
80d0cef73dSGregory Neil Shapiro<!-- <LI><A href="other.html">Other Sources of Information</A> -->
81d0cef73dSGregory Neil Shapiro</UL>
8240266059SGregory Neil Shapiro
83d0cef73dSGregory Neil Shapiro<HR size="1">
84d0cef73dSGregory Neil Shapiro<FONT size="-1">
855dd76dd0SGregory Neil ShapiroCopyright (c) 2000, 2001, 2003 Proofpoint, Inc. and its suppliers.
8640266059SGregory Neil ShapiroAll rights reserved.
87d0cef73dSGregory Neil Shapiro<BR>
8840266059SGregory Neil ShapiroBy using this file, you agree to the terms and conditions set
895ef517c0SGregory Neil Shapiroforth in the LICENSE.
90d0cef73dSGregory Neil Shapiro</FONT>
91d0cef73dSGregory Neil Shapiro</BODY>
92d0cef73dSGregory Neil Shapiro</HTML>
93