This repository has been archived on 2020-12-30. You can view files and clone it, but cannot push or open issues or pull requests.
NetworkProtocolDictionary/structure-schema.yml

42 lines
1.2 KiB
YAML

type: map
mapping:
"protocol":
type: map
required: yes
mapping:
"name":
type: str
required: yes
"shortname":
type: str
"fields":
type: seq
required: yes
sequence: &fieldsseq
- type: map
mapping:
"field": #field name (best if only one word, for easier referencing)
type: str
required: yes
"desc": #short description
type: str
"length": #length in bytes, except bitfield is set to true!
type: int
"bitfield": #if this is true length is in BITS!
type: bool
"optional":
type: bool
"repeatable":
type: bool
"data": #data placeholder for next layer
type: bool
"reference": #reference another protocol directly (e.g. ethpacket->ethframe)
type: str
"subfields":
type: seq
sequence: *fieldsseq
"osilayer":
type: int
range: { max: 7, min: 1 }
required: yes