Visual RFC.
ALL RFCs / RFC 1870
Read the RFC ↗
RFC 1870 / SMTP MESSAGE SIZE

Track recipient outcomes and resource limits

05

One envelope can have several recipients with different size policies. Keep their acceptance and retry outcomes separate.

RFC 1870 · § 6.4EXAMPLE
4 / 4
Track recipient outcomes and resource limitsA cumulative fictional envelope starts after MAIL SIZE800000 receives250. Alice receives RCPT250 and enters the accepted set. Bob receives a size-based RCPT552 and is not eligible for requeue of this message to the same recipient. Cy receives a size-based RCPT452 and may be requeued later. DATA then transfers only for Alice with a chosen final250; neither rejected recipient receives this transaction. Resource controls still matter; SIZE is neither authentication nor encryption.Keep each recipient’s resultMAIL accepted · declared SIZE=800000RCPT TO:<alice@example.com>250 acceptedRCPT TO:<bob@example.com>552 · no requeueRCPT TO:<cy@example.com>452 · may retryDATA for Alice → final 250No delivery to Bob or Cy in this transactionSIZE is not authentication or encryption
04
Send only for the accepted set.

The client sends DATA for Alice and receives a final 250 in this chosen example. Bob and Cy were not accepted. Resource controls remain necessary; SIZE does not authenticate a client or encrypt the message.

Source for this drawing: RFC 1870 · Read RFC section 6.4 ↗

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

A message needs an address.

Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.

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

Sending DATA for an accepted recipient does not deliver it to rejected recipients.

  • A size-based RCPT 452 permits later requeue to that recipient; a size-based RCPT 552 does not permit later requeue to that recipient.
  • A minimal client may compare an advertised fixed maximum without declaring MAIL SIZE, but loses early temporary and per-recipient size checks.
  • SIZE reveals policy and can help crude denial of service. It provides neither authentication nor encryption.
DETAILS

The three recipient results follow the shape of RFC 1870’s example using fictional addresses. No messages are sent by this guide.

Read the RFC section ↗

All chapters in RFC 1870

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 ↗