some schema additions and according correction of ethernet

This commit is contained in:
Marcel 2015-01-04 15:14:17 +01:00
parent 92fd553135
commit 8c003887d7
2 changed files with 18 additions and 3 deletions

View File

@ -34,11 +34,15 @@ protocol: &ethframe
bitfield: yes bitfield: yes
length: 12 length: 12
- -
field: Ethertype (Eth II) or length (IEEE 802.3) field: protocolid
desc: Ethertype (Eth II) or length (IEEE 802.3)
length: 2 length: 2
nextlayer: yes
- -
field: data field: data
data: true data: true
- -
field: FCS (32-bit CRC) field: CRC
desc: FCS (32-bit CRC)
length: 4 length: 4
optional: yes #most network stacks compute that automatically

View File

@ -28,6 +28,8 @@ mapping:
type: bool type: bool
"repeatable": "repeatable":
type: bool type: bool
"nextlayer": #identifies this field as nextlayer field (see nextlayer definition below)
type: bool
"data": #data placeholder for next layer "data": #data placeholder for next layer
type: bool type: bool
"reference": #reference another protocol directly (e.g. ethpacket->ethframe) "reference": #reference another protocol directly (e.g. ethpacket->ethframe)
@ -39,7 +41,7 @@ mapping:
type: int type: int
range: { max: 7, min: 1 } range: { max: 7, min: 1 }
required: yes required: yes
"nextlayer": "nextlayer": #identifier list for next layer protocols
type: seq type: seq
sequence: sequence:
- type: map - type: map
@ -50,6 +52,8 @@ mapping:
"identifier": "identifier":
type: int type: int
required: yes required: yes
"extension":
type: bool
"extensions": "extensions":
type: seq type: seq
sequence: sequence:
@ -64,6 +68,13 @@ mapping:
"referencedfrom": #referencing field of protocol definition "referencedfrom": #referencing field of protocol definition
type: str type: str
required: yes required: yes
"referenceid": #reference id used in protocol definition or extension itself
type: int
required: yes
"before": # standard is after the normal protocol structure, but could be used for vlan in ethernet for example.
type: str
"after":
type: str
"fields": "fields":
type: seq type: seq
sequence: *fieldsseq sequence: *fieldsseq