return TRUE;
}
+static void
+cmd_rcpt_replied(struct smtp_server_cmd_ctx *cmd,
+ struct smtp_server_cmd_rcpt *data)
+{
+ struct smtp_server_recipient *rcpt = data->rcpt;
+
+ smtp_server_recipient_replied(
+ rcpt, smtp_server_command_get_reply(cmd->cmd, 0));
+}
+
static void
cmd_rcpt_completed(struct smtp_server_cmd_ctx *cmd,
struct smtp_server_cmd_rcpt *data)
smtp_server_command_add_hook(command, SMTP_SERVER_COMMAND_HOOK_NEXT,
cmd_rcpt_recheck, rcpt_data);
+ smtp_server_command_add_hook(command, SMTP_SERVER_COMMAND_HOOK_REPLIED,
+ cmd_rcpt_replied, rcpt_data);
smtp_server_command_add_hook(command, SMTP_SERVER_COMMAND_HOOK_COMPLETED,
cmd_rcpt_completed, rcpt_data);
smtp_server_command_add_hook(command, SMTP_SERVER_COMMAND_HOOK_DESTROY,
bool smtp_server_recipient_unref(struct smtp_server_recipient **_rcpt);
void smtp_server_recipient_destroy(struct smtp_server_recipient **_rcpt);
+void smtp_server_recipient_replied(struct smtp_server_recipient *rcpt,
+ const struct smtp_server_reply *reply);
bool smtp_server_recipient_approved(struct smtp_server_recipient **_rcpt);
void smtp_server_recipient_denied(struct smtp_server_recipient *rcpt,
const struct smtp_server_reply *reply);
return rcpt->params.orcpt.addr;
}
+void smtp_server_recipient_replied(struct smtp_server_recipient *rcpt,
+ const struct smtp_server_reply *reply)
+{
+ e_debug(rcpt->event, "Reply submitted: %s",
+ smtp_server_reply_get_one_line(reply));
+}
+
bool smtp_server_recipient_approved(struct smtp_server_recipient **_rcpt)
{
struct smtp_server_recipient *rcpt = *_rcpt;