RFC Errata


Errata Search

 
Source of RFC  
Summary Table Full Records

Found 2 records.

Status: Verified (1)

RFC 5536, "Netnews Article Format", November 2009

Source of RFC: usefor (app)

Errata ID: 5116

Status: Verified
Type: Technical

Reported By: Paul Kyzivat
Date Reported: 2017-09-14
Verifier Name: Alexey Melnikov
Date Verified: 2017-09-27

Section 3 says:

   fields          =/ *( approved /
                         archive /
                         control /
                         distribution /
                         expires /
                         followup-to /
                         injection-date /
                         injection-info /
                         lines /
                         newsgroups /
                         organization /
                         path /
                         summary /
                         supersedes /
                         user-agent /
                         xref )

It should say:

   optional-field  = <see RFC 5322 Section 3.6.8>

   news-fields     =  approved /
                      archive /
                      control /
                      distribution /
                      expires /
                      followup-to /
                      injection-date /
                      injection-info /
                      lines /
                      newsgroups /
                      organization /
                      path /
                      summary /
                      supersedes /
                      user-agent /
                      xref

   optional-field  =/    news-fields

Notes:

In Section 3 of RFC5536, the ABNF syntax provided does not do what is clearly intended. What is specified is:

fields =/ *( approved /
archive /
control /
distribution /
expires /
followup-to /
injection-date /
injection-info /
lines /
newsgroups /
organization /
path /
summary /
supersedes /
user-agent /
xref )

and that extends RFC5322:

fields = *(trace
*optional-field /
*(resent-date /
resent-from /
resent-sender /
resent-to /
resent-cc /
resent-bcc /
resent-msg-id))
*(orig-date /
from /
sender /
reply-to /
to /
cc /
bcc /
message-id /
in-reply-to /
references /
subject /
comments /
keywords /
optional-field)

message = (fields / obs-fields)
[CRLF body]

The problem is with the way things are grouped. Let me give a simpler example:

foo = *("a" / "b") / *("c" / "d")

This means the following are valid: ab aabb bab cd ccdd dcd
But the following are not: abcd ac

I think it is clear that the latter is intended to be valid, for which the syntax would be:

foo = *("a" / "b" / "c" / "d")

It isn't easy to do a valid syntax extension that achieves this effect
because of way the ABNF of RFC5322 is structured. However, after offline
discussion, we realized that RFC5322 already has an extension point for
new headers via the <optional-field> rule. Along with that, RFC3864
established a process for registering header fields with IANA.

The above fix is based on discussion with Pete Resnick (editor of RFC 5322), Julien ÉLIE, Alexey Melnikov and Paul Kyzivat.

An alternative fix from Paul Kyzuvat is:

So, my recommendation is that to fix this, remove from section 3 the
extension of the <fields> rule:

fields =/ *( approved / ...
xref )

Instead, simply rely on the text to specify the newly defined header
fields, and the IANA registration to link them to RFC5322.

Status: Held for Document Update (1)

RFC 5536, "Netnews Article Format", November 2009

Source of RFC: usefor (app)

Errata ID: 1979

Status: Held for Document Update
Type: Editorial

Reported By: Alfred Hoenes
Date Reported: 2009-12-28
Held for Document Update by: Lisa Dusseault

Section 3.2.7 says:

... in the 2nd paragraph:

   However, software that predates this standard does not use this
|  header, and therefore agents MUST accept articles without the
   Injection-Date header field.

It should say:

   However, software that predates this standard does not use this
|  header field, and therefore agents MUST accept articles without the
   Injection-Date header field.

Notes:

Rationale:
The whole RFC is precise in its use of the IETF standard terminology
as explained in Section 2.1. This phrase is an exception; here as
well "header" should be "header field".

Report New Errata