A server that supports enhanced status codes must use them for all replies. --- usr.sbin/smtpd/bounce.c | 2 +- usr.sbin/smtpd/lka_session.c | 4 ++-- usr.sbin/smtpd/smtp_session.c | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-)
diff --git usr.sbin/smtpd/bounce.c usr.sbin/smtpd/bounce.c
index 5d0dad68698..0982be7e756 100644
--- usr.sbin/smtpd/bounce.c
+++ usr.sbin/smtpd/bounce.c
@@ -762,7 +762,7 @@ bounce_io(struct io *io, int evt, void *arg)
break;
default:
- bounce_status(s, "442 i/o error %d", evt);
+ bounce_status(s, "442 4.3.0 i/o error %d", evt);
bounce_free(s);
break;
}
diff --git usr.sbin/smtpd/lka_session.c usr.sbin/smtpd/lka_session.c
index cac9108349e..b390417440d 100644
--- usr.sbin/smtpd/lka_session.c
+++ usr.sbin/smtpd/lka_session.c
@@ -206,9 +206,9 @@ lka_resume(struct lka_session *lks)
m_add_string(p_dispatcher, lks->errormsg);
else {
if (lks->error == LKA_PERMFAIL)
- m_add_string(p_dispatcher, "550 Invalid
recipient");
+ m_add_string(p_dispatcher, "550 5.1.0 Invalid
recipient");
else if (lks->error == LKA_TEMPFAIL)
- m_add_string(p_dispatcher, "451 Temporary
failure");
+ m_add_string(p_dispatcher, "451 4.3.0 Temporary
failure");
}
m_close(p_dispatcher);
diff --git usr.sbin/smtpd/smtp_session.c usr.sbin/smtpd/smtp_session.c
index 13756932208..167834b9536 100644
--- usr.sbin/smtpd/smtp_session.c
+++ usr.sbin/smtpd/smtp_session.c
@@ -2834,7 +2834,8 @@ smtp_message_end(struct smtp_tx *tx)
default:
/* fatal? */
- smtp_reply(s, "421 Internal server error");
+ smtp_reply(s, "421 %s Internal server error",
+ esc_code(ESC_STATUS_TEMPFAIL,
ESC_OTHER_MAIL_SYSTEM_STATUS));
}
smtp_tx_rollback(tx);
--
Sincerely,
Demi Marie Obenour (she/her/hers)
OpenPGP_0xB288B55FFF9C22C1.asc
Description: OpenPGP public key
OpenPGP_signature
Description: OpenPGP digital signature
