| SYNOPSIS | 
#include <libmilter/mfapi.h>
int smfi_setsymlist(
        SMFICTX    *ctx, 
	int        stage,
	char       *macros
);
Set the list of macros that the milter wants to receive from the MTA
for a protocol stage. | 
|---|
| DESCRIPTION | 
| Called When | This function must only be called during
xxfi_negotiate(). |  
| Effects | This function can be used to override the list of macros that the
milter wants to receive from the MTA. |  | 
|---|
| ARGUMENTS | 
    | Argument | Description | 
|---|
 | ctx | the opaque context structure. |  | stage | the protocol stage during which the macro list should be used.
	See the file include/libmilter/mfapi.hfor legal values,
	look for the C macros with the prefixSMFIM_.
	Available protocol stages are at least
	the initial connection, HELO/EHLO, MAIL, RCPT, DATA,
	end of header, and
	the end of a message. |  | macros | list of macros (separated by space).
	Example: "{rcpt_mailer} {rcpt_host}" |  | 
|---|
| RETURN VALUES | MI_FAILURE is returned if 
Otherwise MI_SUCCESS is returned.there is not enough free memory to make a copy of the macro list,
macrosisNULLor empty,stageis not a valid protocol stage,the macro list for
stagehas been set before. | 
| NOTES | There is an internal limit on the number of macros that can be
set (currently 5),
however, this limit is not enforced by libmilter, only by the MTA,
but a possible violation of this restriction is not communicated back to
the milter. |