On one point: On 2018-12-14 06:16, Russ Housley wrote: .... >>> I think that the CDDL in Sections 4.1.1 and 4.3 are supposed to be >>> structures. If that is correct, the structure should look something >>> like the following, which includes type information: >>> >>> basic-header = [ >>> field1: int, >>> field2: text, >>> ] >>> >>> advanced-header = [ >>> ~basic-header, >>> field3: bytes, >>> field4: ~time, >>> ] >> >> We are filling in the gaps for the definition in GRASP M_FLOOD >> mechanism. We aren't defining a new structure. >> I'm not sure if we can do this any other way. > > Something needs to be done to set the context. Clearly, I misunderstood the intent. The CDDL which is being extended is defined in https://tools.ietf.org/html/draft-ietf-anima-grasp-15#section-5, and that draft is fully approved but waiting in MISSREF limbo. I don't have any concerns about the BRSKI CDDL because I did a toy implementation (Pledji.py, Procksy.py and Reggie.py at https://github.com/becarpenter/graspy). The CDDL in the draft has changed very slightly since then; when I have some free time I can update my Python code, but the differences are negligible. [Side note: I don't think anybody would claim that they can automatically generate running code from CDDL yet. If that becomes realistic, it would be the acid test for CDDL used in protocol specs. But it's quite a way in the future, IMHO.] Regards Brian