{ "$id": "traffic-icmp", "title": "traffic-icmp", "description": "Traffic information for ICMP packets", "definitions": { "typecode": { "oneOf": [ { "type": "object", "properties": { "type": { "type": "number", "enum": [ 0, 4, 6, 8, 9, 10 ] }, "code": { "type": [ "integer", "null" ] } } }, { "type": "object", "properties": { "type": { "const": 3 }, "code": { "type": [ "integer", "null" ], "minimum": 0, "maximum": 15 } } }, { "type": "object", "properties": { "type": { "const": 5 }, "code": { "type": [ "integer", "null" ], "minimum": 0, "maximum": 3 } } }, { "type": "object", "properties": { "type": { "const": 11 }, "code": { "type": [ "integer", "null" ], "minimum": 0, "maximum": 1 } } }, { "type": "object", "properties": { "type": { "const": 12 }, "code": { "type": [ "integer", "null" ], "minimum": 0, "maximum": 2 } } }, { "type": "object", "properties": { "type": { "type": "number", "minimum": 13, "maximum": 42 }, "code": { "type": [ "integer", "null" ] } } }, { "type": "object", "properties": { "type": { "const": 43 }, "code": { "type": [ "integer", "null" ], "minimum": 0, "maximum": 4 } } }, { "type": "object", "properties": { "type": { "type": "number", "minimum": 44, "maximum": 255 }, "code": { "type": [ "integer", "null" ] } } } ] } }, "type": "object", "properties": { "protocol": { "const": 1 }, "typecodes": { "type": "array", "items": { "$ref": "#/definitions/typecode" } } }, "required": [ "protocol" ], "additionalProperties": true }