2 <HEAD><TITLE>smfi_setsymlist</TITLE></HEAD>
5 $Id: smfi_setsymlist.html,v 1.7 2013-11-22 20:51:39 ca Exp $
7 <H1>smfi_setsymlist</H1>
9 <TABLE border="0" cellspacing=4 cellpadding=4>
10 <!---------- Synopsis ----------->
11 <TR><TH valign="top" align=left width=100>SYNOPSIS</TH><TD>
13 #include <libmilter/mfapi.h>
20 Set the list of macros that the milter wants to receive from the MTA
24 <!----------- Description ---------->
25 <TR><TH valign="top" align=left>DESCRIPTION</TH><TD>
26 <TABLE border="1" cellspacing=1 cellpadding=4>
27 <TR align="left" valign=top>
28 <TH width="80">Called When</TH>
29 <TD>This function must only be called during
30 <A HREF="xxfi_negotiate.html">xxfi_negotiate()</A>.
33 <TR align="left" valign=top>
34 <TH width="80">Effects</TH>
35 <TD>This function can be used to override the list of macros that the
36 milter wants to receive from the MTA.
42 <!----------- Arguments ---------->
43 <TR><TH valign="top" align=left>ARGUMENTS</TH><TD>
44 <TABLE border="1" cellspacing=0>
45 <TR bgcolor="#dddddd"><TH>Argument</TH><TH>Description</TH></TR>
48 <TD>the opaque context structure.
52 <TD>the protocol stage during which the macro list should be used.
54 <CODE>include/libmilter/mfapi.h</CODE> for legal values,
55 look for the C macros with the prefix
57 Available protocol stages are at least
58 the initial connection, HELO/EHLO, MAIL, RCPT, DATA,
64 <TD>list of macros (separated by space).
65 Example: "{rcpt_mailer} {rcpt_host}"
67 An empty string ("", not NULL) can be used to specify that no macros
74 <!----------- Return values ---------->
76 <TH valign="top" align=left>RETURN VALUES</TH>
78 <TD>MI_FAILURE is returned if
80 <LI>there is not enough free memory to make a copy of the macro list,
81 <LI><CODE>macros</CODE> is <CODE>NULL</CODE>,
82 <LI><CODE>stage</CODE> is not a valid protocol stage,
83 <LI>the macro list for
84 <CODE>stage</CODE> has been set before.
86 Otherwise MI_SUCCESS is returned.
90 <!----------- Notes ---------->
91 <TR align="left" valign=top>
93 <TD>There is an internal limit on the number of macros
95 <!-- XREF: MAXFILTERMACROS -->
97 however, this limit is not enforced by libmilter, only by the MTA,
98 but a possible violation of this restriction is not communicated back to
106 Copyright (c) 2006, 2012 Proofpoint, Inc. and its suppliers.
109 By using this file, you agree to the terms and conditions set
110 forth in the LICENSE.