summaryrefslogtreecommitdiffstats
path: root/contrib/sendmail/libmilter/docs/smfi_register.html
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/sendmail/libmilter/docs/smfi_register.html')
-rw-r--r--contrib/sendmail/libmilter/docs/smfi_register.html219
1 files changed, 140 insertions, 79 deletions
diff --git a/contrib/sendmail/libmilter/docs/smfi_register.html b/contrib/sendmail/libmilter/docs/smfi_register.html
index 3f6ed83..1a35918 100644
--- a/contrib/sendmail/libmilter/docs/smfi_register.html
+++ b/contrib/sendmail/libmilter/docs/smfi_register.html
@@ -1,113 +1,129 @@
-<html>
-<head><title>smfi_register</title></head>
-<body>
+<HTML>
+<HEAD><TITLE>smfi_register</TITLE></HEAD>
+<BODY>
<!--
-$Id: smfi_register.html,v 1.11 2003/05/26 04:10:52 gshapiro Exp $
+$Id: smfi_register.html,v 1.18 2006/12/20 18:37:11 ca Exp $
-->
-<h1>smfi_register</h1>
+<H1>smfi_register</H1>
-<table border="0" cellspacing=4 cellpadding=4>
+<TABLE border="0" cellspacing=4 cellpadding=4>
<!---------- Synopsis ----------->
-<tr><th valign="top" align=left width=150>SYNOPSIS</th><td>
-<pre>
+<TR><TH valign="top" align=left width=100>SYNOPSIS</TH><TD>
+<PRE>
#include &lt;libmilter/mfapi.h&gt;
int smfi_register(
smfiDesc descr
);
-</pre>
+</PRE>
Register a set of filter callbacks.
-</td></tr>
+</TD></TR>
<!----------- Description ---------->
-<tr><th valign="top" align=left>DESCRIPTION</th><td>
-<table border="1" cellspacing=1 cellpadding=1>
-<tr align="left" valign=top>
-<th width="80">Called When</th>
-<td>smfi_register must be called before smfi_main</td>
-</tr>
-<tr align="left" valign=top>
-<th width="80">Effects</th>
-<td>smfi_register creates a filter using the information given in the
-smfiDesc argument. Multiple calls to smfi_register within a
-single process are not allowed.</td>
-</tr>
-</table>
+<TR><TH valign="top" align=left>DESCRIPTION</TH><TD>
+<TABLE border="1" cellspacing=1 cellpadding=1>
+<TR align="left" valign=top>
+<TH width="80">Called When</TH>
+<TD>smfi_register must be called before smfi_main</TD>
+</TR>
+<TR align="left" valign=top>
+<TH width="80">Effects</TH>
+<TD>smfi_register creates a filter using the information given in the
+smfiDesc argument.
+Multiple (successful) calls to smfi_register within a
+single process are not allowed,
+i.e., only one filter can be successfully registered.
+Note, however, that the library may not check whether this restriction
+is obeyed.
+</TD>
+</TR>
+</TABLE>
<!----------- Arguments ---------->
-<tr><th valign="top" align=left>ARGUMENTS</th><td>
- <table border="1" cellspacing=0>
- <tr bgcolor="#dddddd"><th>Argument</th><th>Description</th></tr>
- <tr valign="top"><td>descr</td>
- <td>
-A filter descriptor of type smfiDesc describing the filter's
-functions. The structure has the following members:
-<pre>
+<TR><TH valign="top" align=left>ARGUMENTS</TH><TD>
+ <TABLE border="1" cellspacing=0>
+ <TR bgcolor="#dddddd"><TH>Argument</TH><TH>Description</TH></TR>
+ <TR valign="top"><TD>descr</TD>
+ <TD>
+A filter descriptor of type smfiDesc describing the filter's functions.
+<A NAME="smfiDesc">The structure</A> has the following members:
+<PRE>
struct smfiDesc
{
char *xxfi_name; /* filter name */
int xxfi_version; /* version code -- do not change */
- unsigned long xxfi_flags; /* <a href="#flags">flags</a> */
+ unsigned long xxfi_flags; /* <A href="#flags">flags</A> */
/* connection info filter */
- sfsistat (*<a href="xxfi_connect.html">xxfi_connect</a>)(SMFICTX *, char *, _SOCK_ADDR *);
+ sfsistat (*<A href="xxfi_connect.html">xxfi_connect</A>)(SMFICTX *, char *, _SOCK_ADDR *);
/* SMTP HELO command filter */
- sfsistat (*<a href="xxfi_helo.html">xxfi_helo</a>)(SMFICTX *, char *);
+ sfsistat (*<A href="xxfi_helo.html">xxfi_helo</A>)(SMFICTX *, char *);
/* envelope sender filter */
- sfsistat (*<a href="xxfi_envfrom.html">xxfi_envfrom</a>)(SMFICTX *, char **);
+ sfsistat (*<A href="xxfi_envfrom.html">xxfi_envfrom</A>)(SMFICTX *, char **);
/* envelope recipient filter */
- sfsistat (*<a href="xxfi_envrcpt.html">xxfi_envrcpt</a>)(SMFICTX *, char **);
+ sfsistat (*<A href="xxfi_envrcpt.html">xxfi_envrcpt</A>)(SMFICTX *, char **);
/* header filter */
- sfsistat (*<a href="xxfi_header.html">xxfi_header</a>)(SMFICTX *, char *, char *);
+ sfsistat (*<A href="xxfi_header.html">xxfi_header</A>)(SMFICTX *, char *, char *);
/* end of header */
- sfsistat (*<a href="xxfi_eoh.html">xxfi_eoh</a>)(SMFICTX *);
+ sfsistat (*<A href="xxfi_eoh.html">xxfi_eoh</A>)(SMFICTX *);
/* body block */
- sfsistat (*<a href="xxfi_body.html">xxfi_body</a>)(SMFICTX *, unsigned char *, size_t);
+ sfsistat (*<A href="xxfi_body.html">xxfi_body</A>)(SMFICTX *, unsigned char *, size_t);
/* end of message */
- sfsistat (*<a href="xxfi_eom.html">xxfi_eom</a>)(SMFICTX *);
+ sfsistat (*<A href="xxfi_eom.html">xxfi_eom</A>)(SMFICTX *);
/* message aborted */
- sfsistat (*<a href="xxfi_abort.html">xxfi_abort</a>)(SMFICTX *);
+ sfsistat (*<A href="xxfi_abort.html">xxfi_abort</A>)(SMFICTX *);
/* connection cleanup */
- sfsistat (*<a href="xxfi_close.html">xxfi_close</a>)(SMFICTX *);
+ sfsistat (*<A href="xxfi_close.html">xxfi_close</A>)(SMFICTX *);
+
+ /* any unrecognized or unimplemented command filter */
+ sfsistat (*xxfi_unknown)(SMFICTX *, const char *);
+
+ /* SMTP DATA command filter */
+ sfsistat (*xxfi_data)(SMFICTX *);
+
+ /* negotiation callback */
+ sfsistat (*<A HREF="xxfi_negotiate.html">xxfi_negotiate</A>)(SMFICTX *,
+ unsigned long, unsigned long, unsigned long, unsigned long,
+ unsigned long *, unsigned long *, unsigned long *, unsigned long *);
};
-</pre>
+</PRE>
-A NULL value for any callback function indicates that the filter does
-not wish to process the given type of information, simply returning
-SMFIS_CONTINUE.
- </td></tr>
- </table>
-</td></tr>
+A NULL value for any callback function indicates that the filter
+does not wish to process the given type of information,
+simply returning SMFIS_CONTINUE.
+ </TD></TR>
+ </TABLE>
+</TD></TR>
<!----------- Return values ---------->
-<tr>
-<th valign="top" align=left>RETURN VALUES</th>
+<TR>
+<TH valign="top" align=left>RETURN VALUES</TH>
-<td>
+<TD>
smfi_register may return MI_FAILURE for any of the following reasons:
-<ul>
-<li>memory allocation failed.
-<li>incompatible version or illegal flags value.
-</ul>
+<UL>
+<LI>memory allocation failed.
+<LI>incompatible version or illegal flags value.
+</UL>
-</td>
-</tr>
+</TD>
+</TR>
<!----------- Notes ---------->
-<tr align="left" valign=top>
-<th>NOTES</th>
-<td>
+<TR align="left" valign=top>
+<TH>NOTES</TH>
+<TD>
-<a name="flags"></A>
-The xxfi_flags field should contain the bitwise OR of zero or more of
+<A NAME="flags">The xxfi_flags</A>
+field should contain the bitwise OR of zero or more of
the following values, describing the actions the filter may take:
<TABLE BORDER CELLPADDING="1" cellspacing=1>
-<tr valign="top" bgcolor="#dddddd"><th align="left">Flag</th><th align="center">Description</th></tr>
+<TR valign="top" bgcolor="#dddddd"><TH align="left">Flag</TH><TH align="center">Description</TH></TR>
<TR align="left" valign=top>
<TD>
SMFIF_ADDHDRS
</TD>
<TD>
- This filter may add headers.
+ This filter may <A HREF="smfi_addheader.html">add headers</A>.
</TD>
</TR>
<TR align="left" valign=top>
@@ -115,7 +131,8 @@ the following values, describing the actions the filter may take:
SMFIF_CHGHDRS
</TD>
<TD>
- This filter may change and/or delete headers.
+ This filter may
+ <A HREF="smfi_chgheader.html">change and/or delete headers</A>.
</TD>
</TR>
<TR align="left" valign=top>
@@ -123,7 +140,8 @@ the following values, describing the actions the filter may take:
SMFIF_CHGBODY
</TD>
<TD>
- This filter may replace the body during filtering.
+ This filter may
+ <A HREF="smfi_replacebody.html">replace the body</A> during filtering.
This may have significant performance impact
if other filters do body filtering after this filter.
</TD>
@@ -133,7 +151,18 @@ the following values, describing the actions the filter may take:
SMFIF_ADDRCPT
</TD>
<TD>
- This filter may add recipients to the message.
+ This filter may
+ <A HREF="smfi_addrcpt.html">add recipients</A>
+ to the message.
+ </TD>
+ </TR>
+ <TR>
+ <TD VALIGN="TOP">
+ SMFIF_ADDRCPT_PAR
+ </TD>
+ <TD>
+ This filter may
+ <A HREF="smfi_addrcpt_par.html">add recipients including ESMTP args</A>.
</TD>
</TR>
<TR>
@@ -141,23 +170,55 @@ the following values, describing the actions the filter may take:
SMFIF_DELRCPT
</TD>
<TD>
- This filter may remove recipients from the message.
+ This filter may
+ <A HREF="smfi_delrcpt.html">remove recipients</A> from the message.
+ </TD>
+ </TR>
+ <TR>
+ <TD VALIGN="TOP">
+ SMFIF_QUARANTINE
+ </TD>
+ <TD>
+ This filter may
+ <A HREF="smfi_quarantine.html">quarantine</A> a message.
</TD>
</TR>
+
+ <TR>
+ <TD VALIGN="TOP">
+ SMFIF_CHGFROM
+ </TD>
+ <TD>
+ This filter may
+ <A HREF="smfi_chgfrom.html">change the envelope sender</A> (MAIL).
+ </TD>
+ </TR>
+
+ <TR>
+ <TD VALIGN="TOP">
+ SMFIF_SETSYMLIST
+ </TD>
+ <TD>
+ This filter can
+ <A HREF="smfi_setsymlist.html">send a set of symbols (macros)</A>
+ that it wants.
+ </TD>
+ </TR>
+
</TABLE>
-</td>
-</tr>
+</TD>
+</TR>
-</table>
+</TABLE>
-<hr size="1">
-<font size="-1">
-Copyright (c) 2000-2001, 2003 Sendmail, Inc. and its suppliers.
+<HR size="1">
+<FONT size="-1">
+Copyright (c) 2000-2001, 2003, 2006 Sendmail, Inc. and its suppliers.
All rights reserved.
-<br>
+<BR>
By using this file, you agree to the terms and conditions set
forth in the LICENSE.
-</font>
-</body>
-</html>
+</FONT>
+</BODY>
+</HTML>
OpenPOWER on IntegriCloud