RFC Errata
RFC 7030, "Enrollment over Secure Transport", October 2013
Note: This RFC has been updated by RFC 8951, RFC 8996
Source of RFC: pkix (sec)
Errata ID: 4384
Status: Held for Document Update
Type: Technical
Publication Format(s) : TEXT
Reported By: Pierce Leonberger
Date Reported: 2015-06-02
Held for Document Update by: Roman Danyliw
Date Held: 2020-08-19
Section 4.5.2 says:
CsrAttrs ::= SEQUENCE SIZE (0..MAX) OF AttrOrOID AttrOrOID ::= CHOICE (oid OBJECT IDENTIFIER, attribute Attribute } Attribute { ATTRIBUTE:IOSet } ::= SEQUENCE { type ATTRIBUTE.&id({IOSet}), values SET SIZE(1..MAX) OF ATTRIBUTE.&Type({IOSet}{@type}) }
It should say:
AttrOrOID ::= CHOICE { oid OBJECT IDENTIFIER, attribute Attribute{YouNeedToDefineOrReferenceAnObjectSet} }
Notes:
1. The AttrOrOID CHOICE was started with a '(' versus a '{'.
2. Attribute{} is a parameterized type and you are missing the parameter reference within the AttrOrOID CHOICE for "attribute".
3. You need to define or reference the object set to be used in #2.
Highly recommend you create an ASN.1 Module as part of this specification. This will make it clear which specifications (and the versions there of) you are importing types from (i.e. Attribute{}) and the tagging that should be used (module level). If you need to define a new object set for #3 then this new module would be the perfect home for it.