Subject: [Editorial Errata Reported] RFC7234 (6377)

From: RFC Errata System <[email-masked]>
Date: Fri, 1 Jan 2021 20:42:02 -0800 (PST)

The following errata report has been submitted for RFC7234,
"Hypertext Transfer Protocol (HTTP/1.1): Caching".

--------------------------------------
You may review the report below and at:
https://www.rfc-editor.org/errata/eid6377

--------------------------------------
Type: Editorial
Reported by: MR JUSTAS KUKSTA <[email-masked]>

Section: 7234

Original Text
-------------
{"type":"https://tools.ietf.org/html/rfc7231#section-6.5.4","title":"Not Found","status":404,"traceId":"00-ef45f92788e3f5489612f478de970e86-3c0f03f4a62afc41-00"}

Corrected Text
--------------
Status: Verified (1)
RFC 7234, "Hypertext Transfer Protocol (HTTP/1.1): Caching", June 2014
Source of RFC: httpbis (app)
Errata ID: 4674
Status: Verified
Type: Editorial
Publication Format(s) : TEXT
Reported By: Vasiliy Faronov
Date Reported: 2016-04-21
Verifier Name: Alexey Melnikov
Date Verified: 2016-04-26
Section 5.4 says:

   When sending a no-cache request, a client ought to include both the
   pragma and cache-control directives, unless Cache-Control: no-cache
   is purposefully omitted to target other Cache-Control response
                                                         ^^^^^^^^
   directives at HTTP/1.1 caches.
It should say:

   When sending a no-cache request, a client ought to include both the
   pragma and cache-control directives, unless Cache-Control: no-cache
   is purposefully omitted to target other Cache-Control request
                                                         ^^^^^^^
   directives at HTTP/1.1 caches.
Notes:

"other Cache-Control response directives" was probably intended to be "other Cache-Control request directives," because a request cannot have response directives.

Status: Reported (1)
RFC 7234, "Hypertext Transfer Protocol (HTTP/1.1): Caching", June 2014
Source of RFC: httpbis (app)
Errata ID: 6279
Status: Reported
Type: Technical
Publication Format(s) : TEXT
Reported By: Todd Greer
Date Reported: 2020-09-04
Section 4.2.4 says:

A cache MUST NOT generate a stale response if it is prohibited by an
explicit in-protocol directive (e.g., by a "no-store" or "no-cache"
cache directive, a "must-revalidate" cache-response-directive, or an
applicable "s-maxage" or "proxy-revalidate" cache-response-directive;
see Section 5.2.2).

It should say:

A cache MUST NOT generate a stale response if it is prohibited by an
explicit in-protocol directive (e.g., by a "no-cache"
cache directive, a "must-revalidate" cache-response-directive, or an
applicable "s-maxage" or "proxy-revalidate" cache-response-directive;
see Section 5.2.2).
Notes:

The examples of directives that prohibit stale responses includes "no-store", but the definitions of "no-store" in 5.2.1.5 and 5.2.2.3 don't prohibit serving stale responses, and there is no other mention in RFC 7234 (or elsewhere) of "no-store" prohibiting serving stale responses.

If a "no-store" request directive is intended to prohibit serving stale responses, 5.2.1.5 should say so. (The question is meaningless for "no-store" response directives, since those should never be found in a cache.)

Status: Rejected (3)
RFC 7234, "Hypertext Transfer Protocol (HTTP/1.1): Caching", June 2014
Source of RFC: httpbis (app)
Errata ID: 5564
Status: Rejected
Type: Technical
Publication Format(s) : TEXT
Reported By: Bruce Adams
Date Reported: 2018-11-27
Rejected by: Alexey Melnikov
Date Rejected: 2019-03-25
Section 4.2.4 says:

A cache MUST NOT send stale responses unless it is disconnected
   (i.e., it cannot contact the origin server or otherwise find a
   forward path) or doing so is explicitly allowed (e.g., by the
   max-stale request directive; see Section 5.2.1).
It should say:

A cache SHOULD NOT send stale responses unless it is disconnected
   (i.e., it cannot contact the origin server or otherwise find a
   forward path) or doing so is explicitly allowed (e.g., by the
   max-stale request directive; see Section 5.2.1).

A cache MAY send stale responses if a cache-control extension for
stale content such as "stale-while-revalidate" is used 
(see RFC5861).

Notes
-----
Notes:

The original text seems to conflict with https://tools.ietf.org/html/rfc5861#section-3

3. The stale-while-revalidate Cache-Control Extension

Instructions:
-------------
This erratum is currently posted as "Reported". If necessary, please
use "Reply All" to discuss whether it should be verified or
rejected. When a decision is reached, the verifying party  
can log in to change the status and edit the report, if necessary. 

--------------------------------------
RFC7234 (draft-ietf-httpbis-p6-cache-26)
--------------------------------------
Title               : Hypertext Transfer Protocol (HTTP/1.1): Caching
Publication Date    : June 2014
Author(s)           : R. Fielding, Ed., M. Nottingham, Ed., J. Reschke, Ed.
Category            : PROPOSED STANDARD
Source              : Hypertext Transfer Protocol Bis APP
Area                : Applications
Stream              : IETF
Verifying Party     : IESG

---

From: Mark Nottingham <[email-masked]>
Date: Sat, 2 Jan 2021 15:49:28 +1100

There seems to be something wrong here -- either a tools problem, or some copy-paste spam. Could rfc-editor@ please look into it?

Cheers,

> On 2 Jan 2021, at 3:42 pm, RFC Errata System <[email-masked]> wrote:
> 

--
Mark Nottingham   https://www.mnot.net/