next_delay_dsn

March 26, 2020 Contributors

Name

next_delay_dsn — Override sending of DSN notifications.

Synopsis

#include "hooks/delay_dsn/next_delay_dsn.h"

| int **delay_dsn_next_delay_dsn** ( | closure, |   |
|   | mess, |   |
|   | now, |   |
|   | when); |   |

void * <var class="pdparam">closure</var>;
ec_message * <var class="pdparam">mess</var>;
struct timeval * <var class="pdparam">now</var>;
time_t * <var class="pdparam">when</var>;

Description

The delay_dsn module allows delivery status notifications (DSNs) to be sent to the sender of a message, when that message has not yet been delivered. By default, no delay DSNs are sent.

Use this hook to override when the next delay notification for a message will be sent by the delay_dsn module. now is the current epoch time. when is the epoch time when the next notification should be sent.

Parameters

closure

A pointer to the closure.

mess

The ec_message. For a description of this data type see ec_message.

now

The current epoch time.

when

The epoch time when the next notification should be sent.

Return Values

If GENERATE_DELAY_DSN_HOOK_CONT is returned, processing will fallback to other modules and then to the configuration. If GENERATE_DELAY_DSN_HOOK_OK is returned, then processing will terminate and the value passed back via when will be used.

Threading

This hook will be invoked in the Scheduler thread.

See Also

generate_delay_dsn, send_notification, and the delay_dsn Module.