如果 SMTP 用戶端收到來自伺服器的錯誤,他應該如何表現?

如果 SMTP 用戶端收到來自伺服器的錯誤,他應該如何表現?

考慮以下 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

此後客戶該做什麼?是否允許他發送一封郵件RSET並嘗試另一封郵件?

這個問題與以下內容鬆散相關這個 rspamd 問題我不確定誰的行為是錯的:

  • 如果第一次投遞失敗,rspamd 無法在一個會話中正確處理多封郵件
  • Postfix 未向 rspamd 發送正確的 Milter 命令
  • OpenSMTPd 用於在一封已經失敗的郵件之後發送另一封郵件

相關內容