Subject: [nfsv4] [Technical Errata Reported] RFC4506 (6382)

From: RFC Errata System <[email-masked]>
Date: Fri, 8 Jan 2021 07:42:21 -0800 (PST)

The following errata report has been submitted for RFC4506,
"XDR: External Data Representation Standard".

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

--------------------------------------
Type: Technical
Reported by: Ed Schouten <[email-masked]>

Section: 6.3

Original Text
-------------
      declaration:
           type-specifier identifier
         | type-specifier identifier "[" value "]"
         | type-specifier identifier "<" [ value ] ">"
         | "opaque" identifier "[" value "]"
         | "opaque" identifier "<" [ value ] ">"
         | "string" identifier "<" [ value ] ">"
         | type-specifier "*" identifier
         | "void"

[...]

      struct-body:
         "{"
            ( declaration ";" )
            ( declaration ";" )*
         "}"

[...]

      type-def:
           "typedef" declaration ";"
         | "enum" identifier enum-body ";"
         | "struct" identifier struct-body ";"
         | "union" identifier union-body ";"

Corrected Text
--------------
None

Notes
-----
This grammar permits statements like:

typedef void;
struct foo { void; };

rpcgen doesn't allow this, failing with the following error message:

voids allowed only inside union and program definitions with one argument

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. 

--------------------------------------
RFC4506 (draft-ietf-nfsv4-rfc1832bis-06)
--------------------------------------
Title               : XDR: External Data Representation Standard
Publication Date    : May 2006
Author(s)           : M. Eisler, Ed.
Category            : INTERNET STANDARD
Source              : Network File System Version 4
Area                : Transport
Stream              : IETF
Verifying Party     : IESG