Visual RFC.
ALL RFCs / RFC 3463
Read the RFC ↗
RFC 3463 / ENHANCED MAIL STATUS

Read the three fields without inventing a new SMTP code

01

An enhanced status code is a dotted class, subject and detail. It describes a mail-system condition; it is not a replacement spelling for an ordinary three-digit SMTP reply.

RFC 3463 · § 2EXAMPLE
4 / 4
Read the three fields without inventing a new SMTP codeFour code-reading states. Dotted4.2.2is not SMTP422. Class4then subject2then detail2are separated as outcome, Mailbox Status and Mailbox full. The subject/detail pair is interpreted together. A separate malformed5.02.2input is blocked before lookup because the subject has a leading zero. Subject/detail each permit one to three digits without padding; zero itself is valid. This grammar check does not prove registry assignment or appropriate class use.Three fields carry three different jobs5.02.2lookup padded subject 02MUST use no leading zero digitsWrite the single zero as 0, never 00No spaces or comments inside a code
04
Reject padded syntax before lookup.

Separate malformed input 5.02.2 has a leading zero in its subject. Stop at the grammar gate. Do not normalize it silently and then pretend it was a correctly formed code.

Source for this drawing: RFC 3463 · Read RFC section 2 ↗

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
New to this? Start hereA quick picture + helpful background

The envelope and the letter do different jobs.

Mail transport moves a message between servers. The message format describes its contents. Authentication adds checks; it does not make every message safe.

Helpful first, if these ideas are unfamiliar

These pictures are analogies to help you learn. The linked RFC explains the actual rules.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

KEY POINT

Syntax, registered meaning and appropriate use are separate checks.

  • The class is exactly 2, 4 or 5. Subject and detail each have one to three decimal digits. No whitespace or comments are allowed within the code; numeric sub-codes MUST have no leading zero digits.
  • Class describes the delivery outcome, subject the probable source of the condition, and detail a more precise condition within that subject. A detail number has no meaning independent of its subject.
  • Passing the grammar alone does not establish that a code is registered or appropriate for that class. This guide decodes selected examples, not every registry entry or its SMTP embedding.
DETAILS

The zero sub-code is written 0, not 00. The X and XXX shown in RFC tables are placeholders, not literal characters to transmit. A Delivery Status Notification (DSN) is a structured delivery report; RFC 3464 defines its format. SMTP extension usage is separately specified, so this is not a complete SMTP reply transcript.

Read the RFC section ↗

All chapters in RFC 3463

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗