comparison xml/sm-archive.in @ 0:616666e2f34c

initial version
author carl
date Fri, 10 Mar 2006 10:30:08 -0800
parents
children 311e331f1bab
comparison
equal deleted inserted replaced
-1:000000000000 0:616666e2f34c
1 <reference>
2 <title>@PACKAGE@ Sendmail milter - Version @VERSION@</title>
3 <partintro>
4 <title>Packages</title>
5 <para>The various source and binary packages are available at <ulink
6 url="http://www.five-ten-sg.com/@PACKAGE@/packages/">http://www.five-ten-sg.com/@PACKAGE@/packages/</ulink>
7 The most recent documentation is available at <ulink
8 url="http://www.five-ten-sg.com/@PACKAGE@/">http://www.five-ten-sg.com/@PACKAGE@/</ulink>
9 </para>
10
11 </partintro>
12
13 <refentry id="@PACKAGE@.1">
14 <refentryinfo>
15 <date>2006-03-10</date>
16 </refentryinfo>
17
18 <refmeta>
19 <refentrytitle>@PACKAGE@</refentrytitle>
20 <manvolnum>1</manvolnum>
21 <refmiscinfo>@PACKAGE@ @VERSION@</refmiscinfo>
22 </refmeta>
23
24 <refnamediv id='name.1'>
25 <refname>@PACKAGE@</refname>
26 <refpurpose>a sendmail milter to add recipients to messages</refpurpose>
27 </refnamediv>
28
29 <refsynopsisdiv id='synopsis.1'>
30 <title>Synopsis</title>
31 <cmdsynopsis>
32 <command>@PACKAGE@</command>
33 <arg><option>-c</option></arg>
34 <arg><option>-d <replaceable class="parameter">n</replaceable></option></arg>
35 <arg><option>-p <replaceable class="parameter">sendmail-socket</replaceable></option></arg>
36 <arg><option>-t <replaceable class="parameter">timeout</replaceable></option></arg>
37 </cmdsynopsis>
38 </refsynopsisdiv>
39
40 <refsect1 id='options.1'>
41 <title>Options</title>
42 <variablelist>
43 <varlistentry>
44 <term>-c</term>
45 <listitem><para>
46 Load the configuration file, print a cannonical form
47 of the configuration on stdout, and exit.
48 </para></listitem>
49 </varlistentry>
50 <varlistentry>
51 <term>-d <replaceable class="parameter">n</replaceable></term>
52 <listitem><para>
53 Set the debug level to <replaceable class="parameter">n</replaceable>.
54 </para></listitem>
55 </varlistentry>
56 <varlistentry>
57 <term>-p <replaceable class="parameter">sendmail-socket</replaceable></term>
58 <listitem><para>
59 Set the socket used for the milter connection to sendmail. This is either
60 "inet:port@ip-address" or "local:local-domain-socket-file-name".
61 </para></listitem>
62 </varlistentry>
63 <varlistentry>
64 <term>-t <replaceable class="parameter">timeout</replaceable></term>
65 <listitem><para>
66 Set the timeout in seconds used for communication with sendmail.
67 </para></listitem>
68 </varlistentry>
69 </variablelist>
70 </refsect1>
71
72 <refsect1 id='usage.1'>
73 <title>Usage</title>
74 <para><command>@PACKAGE@</command> -c</para>
75 <para><command>@PACKAGE@</command> -d 10 -p local:dnsbl.sock</para>
76 </refsect1>
77
78 <refsect1 id='installation.1'>
79 <title>Installation</title>
80 <para>
81 This is now a standard GNU autoconf/automake installation, so the normal
82 "./configure; make; su; make install" works. "make chkconfig" will
83 setup the init.d runlevel scripts. Alternatively, you can use the
84 source or binary RPMs at <ulink
85 url="http://www.five-ten-sg.com/@PACKAGE@/packages">http://www.five-ten-sg.com/@PACKAGE@/packages</ulink>.
86 </para>
87 <para>
88 Note that this has ONLY been tested on Linux, specifically RedHat Linux.
89 You will need at a minimum a C++ compiler with a
90 minimally thread safe STL implementation. The distribution includes a
91 test.cpp program. If it fails this milter won't work. If it passes,
92 this milter might work.
93 </para>
94 <para>
95 Modify your sendmail.mc by adding
96 the following line in your sendmail.mc and rebuild the .cf file
97 </para>
98 <para><screen>INPUT_MAIL_FILTER(`sm-archive', `S=local:/var/run/sm-archive/sm-archive.sock, F=T, T=C:30s;S:5m;R:5m;E:5m')</screen></para>
99 <para>
100 Modify the default <citerefentry>
101 <refentrytitle>@PACKAGE@.conf</refentrytitle> <manvolnum>5</manvolnum>
102 </citerefentry> configuration.
103 </para>
104 </refsect1>
105
106 <refsect1 id='configuration.1'>
107 <title>Configuration</title>
108 <para>
109 The configuration file is documented in <citerefentry>
110 <refentrytitle>@PACKAGE@.conf</refentrytitle> <manvolnum>5</manvolnum>
111 </citerefentry>. Any change to the config file, or any file included
112 from that config file, will cause it to be reloaded within three
113 minutes.
114 </para>
115 </refsect1>
116
117 <refsect1 id='introduction.1'>
118 <title>Introduction</title>
119 <para>
120 Consider the problem of archiving all the mail sent to or from particular
121 email addresses or domains. This milter allows you to configure archive
122 mailboxes for each address or domain. It will add the address of the archive
123 mailbox to messages that pass thru this milter.
124 </para>
125 <para>
126 The DNSBL milter reads a text configuration file (sm-archive.conf) on
127 startup, and whenever the config file (or any of the referenced include
128 files) is changed. The entire configuration file is case insensitive.
129 If the configuration cannot be loaded due to a syntax error, the milter
130 will log the error and quit. If the configuration cannot be reloaded
131 after being modified, the milter will log the error and send an email to
132 root from sm-archive@$hostname. You probably want to added sm-archive@$hostname
133 to your /etc/mail/virtusertable since otherwise sendmail will reject
134 that message.
135 </para>
136 </refsect1>
137
138 <refsect1 id='todo.1'>
139 <title>TODO</title>
140 <para>
141 Placeholder for future ideas.
142 </para>
143 </refsect1>
144
145 <refsect1 id='copyright.1'>
146 <title>Copyright</title>
147 <para>
148 Copyright (C) 2006 by 510 Software Group &lt;carl@five-ten-sg.com&gt;
149 </para>
150 <para>
151 This program is free software; you can redistribute it and/or modify it
152 under the terms of the GNU General Public License as published by the
153 Free Software Foundation; either version 2, or (at your option) any
154 later version.
155 </para>
156 <para>
157 You should have received a copy of the GNU General Public License along
158 with this program; see the file COPYING. If not, please write to the
159 Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
160 </para>
161 </refsect1>
162
163 <refsect1 id='version.1'>
164 <title>CVS Version</title>
165 <para>
166 $Id$
167 </para>
168 </refsect1>
169 </refentry>
170
171
172 <refentry id="@PACKAGE@.conf.5">
173 <refentryinfo>
174 <date>2006-03-10</date>
175 </refentryinfo>
176
177 <refmeta>
178 <refentrytitle>@PACKAGE@.conf</refentrytitle>
179 <manvolnum>5</manvolnum>
180 <refmiscinfo>@PACKAGE@ @VERSION@</refmiscinfo>
181 </refmeta>
182
183 <refnamediv id='name.5'>
184 <refname>@PACKAGE@.conf</refname>
185 <refpurpose>configuration file for @PACKAGE@ sendmail milter</refpurpose>
186 </refnamediv>
187
188 <refsynopsisdiv id='synopsis.5'>
189 <title>Synopsis</title>
190 <cmdsynopsis>
191 <command>@PACKAGE@.conf</command>
192 </cmdsynopsis>
193 </refsynopsisdiv>
194
195 <refsect1 id='description.5'>
196 <title>Description</title>
197 <para>The <command>@PACKAGE@.conf</command> configuration file is
198 specified by this partial bnf description.</para>
199
200 <literallayout class="monospaced"><![CDATA[
201 CONFIG = {ENV-FROM ENV-TO}+
202 ENV-FROM = env_from "{" LIST "}" ";"
203 ENV-TO = rcpt_to "{" LIST "}" ";"
204 LIST = ELEMENT {LIST}+
205 ELEMENT = ADDRESS TARGET ";"
206 ADDRESS = (USER@ | DOMAIN | USER@DOMAIN)
207 TARGET = ("" | USER@DOMAIN)
208 };]]></literallayout>
209 </refsect1>
210
211 <refsect1 id='sample.5'>
212 <title>Sample</title>
213 <literallayout class="monospaced"><![CDATA[
214 env_from {
215 fred@example.com manager@example.com;
216 example.com archive@example.com;
217 joe@example.com ""; # suppress archiving for joe
218 };
219
220 rcpt_to {
221 fred@example.com manager@example.com;
222 };
223
224 };]]></literallayout>
225 </refsect1>
226
227 <refsect1 id='version.5'>
228 <title>CVS Version</title>
229 <para>
230 $Id$
231 </para>
232 </refsect1>
233
234 </refentry>
235 </reference>