Como um cliente SMTP deve se comportar se receber um erro do servidor?

Como um cliente SMTP deve se comportar se receber um erro do servidor?

Considere a seguinte sessão SMTP:

220 mx.example.com ESMTP Postfix
EHLO example.com
250-mx.example.com
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250 SMTPUTF8
MAIL FROM:<>
250 2.1.0 Ok
RCPT TO:<[email protected]>
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Subject: Test
Test
.
451 4.7.1 Try again later

O que um cliente deve fazer depois disso? Ele tem permissão para enviar RSETe tentar outro e-mail?

Esta questão está vagamente relacionada aesse problema do rspamde não tenho certeza de quem se comporta mal:

  • rspamd por não lidar corretamente com vários e-mails em uma sessão se a primeira entrega falhar
  • Postfix para não enviar ao rspamd os comandos Milter corretos
  • OpenSMTPd para entregar outro e-mail após um que já falhou

informação relacionada