1168515Sgshapiro<HTML> 2168515Sgshapiro<HEAD><TITLE>smfi_setsymlist</TITLE></HEAD> 3168515Sgshapiro<BODY> 4168515Sgshapiro<!-- 5266527Sgshapiro$Id: smfi_setsymlist.html,v 1.7 2013-11-22 20:51:39 ca Exp $ 6168515Sgshapiro--> 7168515Sgshapiro<H1>smfi_setsymlist</H1> 8168515Sgshapiro 9168515Sgshapiro<TABLE border="0" cellspacing=4 cellpadding=4> 10168515Sgshapiro<!---------- Synopsis -----------> 11168515Sgshapiro<TR><TH valign="top" align=left width=100>SYNOPSIS</TH><TD> 12168515Sgshapiro<PRE> 13168515Sgshapiro#include <libmilter/mfapi.h> 14168515Sgshapiroint smfi_setsymlist( 15363466Sgshapiro SMFICTX *ctx, 16168515Sgshapiro int stage, 17168515Sgshapiro char *macros 18168515Sgshapiro); 19168515Sgshapiro</PRE> 20168515SgshapiroSet the list of macros that the milter wants to receive from the MTA 21168515Sgshapirofor a protocol stage. 22168515Sgshapiro</TD></TR> 23168515Sgshapiro 24168515Sgshapiro<!----------- Description ----------> 25168515Sgshapiro<TR><TH valign="top" align=left>DESCRIPTION</TH><TD> 26168515Sgshapiro<TABLE border="1" cellspacing=1 cellpadding=4> 27168515Sgshapiro<TR align="left" valign=top> 28168515Sgshapiro<TH width="80">Called When</TH> 29168515Sgshapiro<TD>This function must only be called during 30168515Sgshapiro<A HREF="xxfi_negotiate.html">xxfi_negotiate()</A>. 31168515Sgshapiro</TD> 32168515Sgshapiro</TR> 33168515Sgshapiro<TR align="left" valign=top> 34168515Sgshapiro<TH width="80">Effects</TH> 35168515Sgshapiro<TD>This function can be used to override the list of macros that the 36168515Sgshapiromilter wants to receive from the MTA. 37168515Sgshapiro</TD> 38168515Sgshapiro</TR> 39168515Sgshapiro</TABLE> 40363466Sgshapiro</TD></TR> 41168515Sgshapiro 42168515Sgshapiro<!----------- Arguments ----------> 43168515Sgshapiro<TR><TH valign="top" align=left>ARGUMENTS</TH><TD> 44168515Sgshapiro <TABLE border="1" cellspacing=0> 45168515Sgshapiro <TR bgcolor="#dddddd"><TH>Argument</TH><TH>Description</TH></TR> 46168515Sgshapiro 47168515Sgshapiro <TR><TD>ctx</TD> 48168515Sgshapiro <TD>the opaque context structure. 49168515Sgshapiro </TD></TR> 50168515Sgshapiro 51168515Sgshapiro <TR><TD>stage</TD> 52168515Sgshapiro <TD>the protocol stage during which the macro list should be used. 53168515Sgshapiro See the file 54168515Sgshapiro <CODE>include/libmilter/mfapi.h</CODE> for legal values, 55168515Sgshapiro look for the C macros with the prefix 56168515Sgshapiro <CODE>SMFIM_</CODE>. 57168515Sgshapiro Available protocol stages are at least 58168515Sgshapiro the initial connection, HELO/EHLO, MAIL, RCPT, DATA, 59168515Sgshapiro end of header, and 60168515Sgshapiro the end of a message. 61168515Sgshapiro </TD></TR> 62168515Sgshapiro 63168515Sgshapiro <TR><TD>macros</TD> 64168515Sgshapiro <TD>list of macros (separated by space). 65168515Sgshapiro Example: "{rcpt_mailer} {rcpt_host}" 66285229Sgshapiro <BR> 67285229Sgshapiro An empty string ("", not NULL) can be used to specify that no macros 68285229Sgshapiro should be sent. 69168515Sgshapiro </TD></TR> 70168515Sgshapiro 71168515Sgshapiro </TABLE> 72168515Sgshapiro</TD></TR> 73168515Sgshapiro 74168515Sgshapiro<!----------- Return values ----------> 75168515Sgshapiro<TR> 76363466Sgshapiro<TH valign="top" align=left>RETURN VALUES</TH> 77168515Sgshapiro 78168515Sgshapiro<TD>MI_FAILURE is returned if 79168515Sgshapiro<UL> 80168515Sgshapiro<LI>there is not enough free memory to make a copy of the macro list, 81285229Sgshapiro<LI><CODE>macros</CODE> is <CODE>NULL</CODE>, 82168515Sgshapiro<LI><CODE>stage</CODE> is not a valid protocol stage, 83168515Sgshapiro<LI>the macro list for 84168515Sgshapiro<CODE>stage</CODE> has been set before. 85168515Sgshapiro</UL> 86168515SgshapiroOtherwise MI_SUCCESS is returned. 87168515Sgshapiro</TD> 88168515Sgshapiro</TR> 89168515Sgshapiro 90168515Sgshapiro<!----------- Notes ----------> 91168515Sgshapiro<TR align="left" valign=top> 92363466Sgshapiro<TH>NOTES</TH> 93244833Sgshapiro<TD>There is an internal limit on the number of macros 94244833Sgshapirothat can be set 95244833Sgshapiro<!-- XREF: MAXFILTERMACROS --> 96244833Sgshapiro(currently 50), 97168515Sgshapirohowever, this limit is not enforced by libmilter, only by the MTA, 98168515Sgshapirobut a possible violation of this restriction is not communicated back to 99168515Sgshapirothe milter.</TD> 100168515Sgshapiro</TR> 101168515Sgshapiro 102168515Sgshapiro</TABLE> 103168515Sgshapiro 104168515Sgshapiro<HR size="1"> 105168515Sgshapiro<FONT size="-1"> 106261194SgshapiroCopyright (c) 2006, 2012 Proofpoint, Inc. and its suppliers. 107168515SgshapiroAll rights reserved. 108168515Sgshapiro<BR> 109168515SgshapiroBy using this file, you agree to the terms and conditions set 110168515Sgshapiroforth in the LICENSE. 111168515Sgshapiro</FONT> 112168515Sgshapiro</BODY> 113168515Sgshapiro</HTML> 114