Sendmail 8.13.3 Programmer's Guide
Table Of Contents

Milter APIs
Other Message Handling APIs
Chapter 234
Other Message Handling APIs
The following APIs provide special case handling instructions for the
Milter API or the MTA, without altering the content or status of the
message:
• smfi_progress()
• smfi_quarantine()
You can call these APIs only in the xxfi_eom() callback. These APIs can
invoke additional communication with the MTA. They return either
MI_SUCCESS or MI_FAILURE to indicate the status of the operation.
The status returned by these functions indicate whether the message of
the filter was successfully sent to the MTA and does not indicate whether
the MTA performed the requested operation.
The smfi_progress() API
You can use the smfi_progress() API to notify an MTA that an
operation is still working on a message causing the MTA to restart its
timeout values. You can call smfi_progress() from the xxfi_eom()
callback.
The declaration of smfi_progress() is as follows:
#include <libmilter/mfapi.h>
int smfi_progress(
SMFICTX *ctx;
);
Argument
You must call smfi_progress() with the ctx argument, which specifies
an opaque context structure.
Return Values
smfi_progress() returns MI_FAILURE on failure if a network failure
occurs. smfi_progress() returns MI_SUCCESS on success.