index.html revision 132943
1281760Ssjg<html>
2281760Ssjg<head>
3281760Ssjg<title>Filtering Mail with Sendmail</title>
4281760Ssjg</head>
5281760Ssjg<body>
6281760Ssjg<!--
7281760Ssjg$Id: index.html,v 1.12 2003/03/05 19:57:54 ca Exp $
8281760Ssjg-->
9281760Ssjg
10281760Ssjg<h1>Filtering Mail with Sendmail</h1>
11281760Ssjg
12281760Ssjg<!--
13281760Ssjg<P><b>Disclaimer</b>: 
14281760SsjgThis preliminary API description is provided for review only.  This
15281760Ssjgspecification may change based on feedback from reviewers, and does
16281760Ssjgnot bind Sendmail to offer this functionality in any release.
17281760Ssjg-->
18281760Ssjg
19281760Ssjg<h2>Introduction</h2>
20281760Ssjg
21281760Ssjg<P>
22281760SsjgSendmail's Content Management API (milter) provides third-party
23281760Ssjgprograms to access mail messages as they are being processed by the
24281760SsjgMail Transfer Agent (MTA), allowing them to examine and modify message
25281760Ssjgcontent and meta-information.  Filtering policies implemented by
26281760SsjgMilter-conformant filters may then be centrally configured and
27281760Ssjgcomposed in an end-user's MTA configuration file.
28281760Ssjg
29281760Ssjg<p>
30281760SsjgPossible uses for filters include spam rejection, virus
31281760Ssjgfiltering, and content control.  In general, Milter seeks to address
32281760Ssjgsite-wide filtering concerns in a scalable way.  Individual users' mail
33281760Ssjgfiltering needs (e.g. sorting messages by subject) are left to
34281760Ssjgclient-level programs such as <a href="http://www.procmail.org">Procmail</a>.
35281760Ssjg
36281760Ssjg<P>
37281760SsjgThis document is a technical introduction intended for those
38281760Ssjginterested in developing Milter filters.  It includes:
39281760Ssjg<ul>
40281760Ssjg<li>A description of Milter's design goals.
41281760Ssjg
42281760Ssjg<li>An explanation of Milter application architecture, including
43281760Ssjginteractions between the support library and user code, and between
44281760Ssjgfilters and the MTA.
45281760Ssjg
46281760Ssjg<li>A specification of the C application programming interface.
47281760Ssjg<li>An example of a simple Milter filter.
48281760Ssjg</ul>
49281760Ssjg
50281760Ssjg<h2>Contents</h2>
51281760Ssjg
52281760Ssjg<ul>
53281760Ssjg<li><a href="design.html">Architecture</a>
54281760Ssjg<ul>
55281760Ssjg    <li>Design Goals
56281760Ssjg    <li>Implementing Filtering Policies
57281760Ssjg    <li>MTA - Filter communication
58281760Ssjg</ul>
59281760Ssjg<li><a href="overview.html">Technical Overview</a>
60281760Ssjg<ul>
61281760Ssjg    <li>Initialization
62    <li>Control flow
63    <li>Multithreading
64    <li>Resource Management
65    <li>Signal Handling
66</ul>
67<li><a href="api.html">API Documentation</a>
68<ul>
69    <li>Library Control Functions
70    <li>Data Access Functions
71    <li>Message Modification Functions
72    <li>Callbacks
73</ul>
74<li><a href="installation.html">Installation and Configuration</a>
75<ul>
76    <li>Compiling and Installing Your Filter
77    <li>Configuring Sendmail
78</ul>
79<li><a href="sample.html">A Sample Filter</a>
80<!-- <li><a href="other.html">Other Sources of Information</a> -->
81</ul>
82
83<hr size="1">
84<font size="-1">
85Copyright (c) 2000, 2001, 2003 Sendmail, Inc. and its suppliers.
86All rights reserved.
87<br>
88By using this file, you agree to the terms and conditions set
89forth in the LICENSE.
90</font>
91</body>
92</html>
93