smfi_setsymlist

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
ArgumentDescription
ctx the opaque context structure.
stage the protocol stage during which the macro list should be used. See the file include/libmilter/mfapi.h for legal values, look for the C macros with the prefix SMFIM_. 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}"
An empty string ("", not NULL) can be used to specify that no macros should be sent.
RETURN VALUES MI_FAILURE is returned if
  • there is not enough free memory to make a copy of the macro list,
  • macros is NULL,
  • stage is not a valid protocol stage,
  • the macro list for stage has been set before.
Otherwise MI_SUCCESS is returned.
NOTES There is an internal limit on the number of macros that can be set (currently 50), 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.

Copyright (c) 2006, 2012 Proofpoint, Inc. and its suppliers. All rights reserved.
By using this file, you agree to the terms and conditions set forth in the LICENSE.