如何使用多个RCPT TO处理拒绝?

时间:2018-12-10 16:13:05

标签: smtp

我运行邮件服务。

某些服务器向我发送包含多个RCPT TO的电子邮件(max @ test.com,andrew @ test.com,bob @ test.com等)。

问题是bob@test.com的收件箱可能已满,因此他的电子邮件将被拒绝。

不幸的是,这是在DATA命令上发生的,如果我在这里返回4xx错误,这将适用于所有RCPT TO(afaik)。

更糟糕的是,在遍历TO的同时,我可以为第一封和第二封电子邮件发送电子邮件,而对第三封邮件发送失败(配额或其他任何错误)。在这种情况下,即使前两封电子邮件已成功发送,我也会将5xx返回发送域

在这种情况下我该怎么办?

在SMTP中是否有特定的答复说“电子邮件X和Y很好,但Z不好”

1 个答案:

答案 0 :(得分:0)

您可以向发送方发送带有“无法传递”错误的传递状态通知消息。

但是,是的,您没有返回错误代码以响应expresion="payload"命令,客户端可以使用该命令知道bob失败了,而其他成功了。

如果要提供此类错误,则必须发出这些错误以响应DATA命令。