From 16ec838943fea355a03ecfe535532466343980dc Mon Sep 17 00:00:00 2001 From: Ed Warnicke Date: Thu, 23 Jan 2014 18:05:04 +0530 Subject: [PATCH] Binary masks in match types yang model changed to numbers. Plugin code review corresponding to this change: https://git.opendaylight.org/gerrit/#/c/4638/ Patch3: Fixed masks to use the same type as values (MacAddress for MacAddress and IPv6FlowLabel for IPv6FlowLabel) rather than arbitrary uint* values. Signed-off-by: Deepthi V V Change-Id: Icbc84312c0a2f26738ab9d84f6af34783c4aad5d Signed-off-by: Ed Warnicke --- .../main/yang/opendaylight-match-types.yang | 116 +++++++++--------- 1 file changed, 58 insertions(+), 58 deletions(-) diff --git a/opendaylight/md-sal/model/model-flow-base/src/main/yang/opendaylight-match-types.yang b/opendaylight/md-sal/model/model-flow-base/src/main/yang/opendaylight-match-types.yang index 31736d2737..321e054097 100644 --- a/opendaylight/md-sal/model/model-flow-base/src/main/yang/opendaylight-match-types.yang +++ b/opendaylight/md-sal/model/model-flow-base/src/main/yang/opendaylight-match-types.yang @@ -10,24 +10,24 @@ module opendaylight-match-types { revision "2013-10-26" { description "Initial revision of macth types"; } - + grouping "mac-address-filter" { leaf address { mandatory true; type yang:mac-address; } leaf mask { - type binary; + type yang:mac-address; } } - + grouping "of-metadata" { leaf metadata { type uint64; } - + leaf metadata-mask { - type binary; + type uint64; } } @@ -46,15 +46,11 @@ module opendaylight-match-types { container ethernet-type { description "Ethernet frame type."; presence "Match field is active and set"; - + leaf type { mandatory true; type l2t:ether-type; // Needs to define that as general model } - - leaf mask { - type binary; - } } } @@ -66,9 +62,9 @@ module opendaylight-match-types { leaf vlan-id-present { type boolean; } - + leaf vlan-id { - type l2t:vlan-id; + type l2t:vlan-id; } } leaf vlan-pcp { @@ -80,82 +76,84 @@ module opendaylight-match-types { grouping "ip-match-fields" { leaf ip-protocol { description "IP protocol."; - type uint8; + type uint8; } leaf ip-dscp { description "IP DSCP (6 bits in ToS field)."; - type inet:dscp; + type inet:dscp; } - + leaf ip-ecn { description "IP ECN (2 bits in ToS field)."; - type uint8; + type uint8; } - - leaf ip-proto { - description "IP Proto (IPv4 or IPv6 Protocol Number)."; - type inet:ip-version; + + leaf ip-proto { + description "IP Proto (IPv4 or IPv6 Protocol Number)."; + type inet:ip-version; } - } - + } + grouping "ipv4-match-fields" { leaf ipv4-source { description "IPv4 source address."; type inet:ipv4-prefix; } - + leaf ipv4-destination { description "IPv4 destination address."; type inet:ipv4-prefix; } - + } - + grouping "ipv6-match-fields" { leaf ipv6-source { description "IPv6 source address."; type inet:ipv6-prefix; } - + leaf ipv6-destination { description "IPv6 destination address."; type inet:ipv6-prefix; } - + leaf ipv6-nd-target { description "IPv6 target address for neighbour discovery message"; type inet:ipv6-address; } - + container "ipv6-label" { leaf ipv6-flabel { type inet:ipv6-flow-label; } - + leaf flabel-mask { - type binary; + type inet:ipv6-flow-label; } } - + leaf ipv6-nd-sll { description "Link layer source address for neighbour discovery message"; type yang:mac-address; } - + leaf ipv6-nd-tll { description "Link layer target address for neighbour discovery message"; type yang:mac-address; } - - container "ipv6-ext-header" { + + container "ipv6-ext-header" { leaf ipv6-exthdr { description "IPv6 Extension Header field"; type uint16; } leaf ipv6-exthdr-mask { - type binary; + type uint16 { + range "0..512"; + } } } } @@ -176,29 +174,31 @@ module opendaylight-match-types { description "Label in the first MPLS shim header"; type uint32; } - + leaf mpls-tc { description "TC in the first MPLS shim header"; type uint8; } - + leaf mpls-bos { description "BoS bit in the first MPLS shim header"; type uint8; } - + container "pbb" { leaf pbb-isid { description "I-SID in the first PBB service instance tag"; type uint32; - } + } leaf pbb-mask { - type binary; + type uint32 { + range "0..16777216"; + } } } } - + grouping "tcp-match-fields" { leaf tcp-source-port { description "TCP source port."; @@ -231,7 +231,7 @@ module opendaylight-match-types { type uint8; // Define ICMP Code } } - + grouping "icmpv6-match-fields" { leaf icmpv6-type { description "ICMP type."; @@ -247,12 +247,12 @@ module opendaylight-match-types { leaf arp-op { type uint16; } - + leaf arp-source-transport-address { description "ARP source IPv4 address."; type inet:ipv4-prefix; } - + leaf arp-target-transport-address { description "ARP target IPv4 address."; type inet:ipv4-prefix; @@ -268,43 +268,43 @@ module opendaylight-match-types { uses mac-address-filter; } } - + grouping match { leaf in-port { type inv:node-connector-id; } - + leaf in-phy-port { type inv:node-connector-id; } - + container "metadata" { uses of-metadata; } - + container "tunnel" { leaf tunnel-id { description "Metadata associated in the logical port"; type uint64; } - + leaf tunnel-mask { - type binary; + type uint64; } } - + container "ethernet-match" { uses "ethernet-match-fields"; } - + container "vlan-match" { uses "vlan-match-fields"; } - + container "ip-match" { uses "ip-match-fields"; } - + choice layer-3-match { case "ipv4-match" { uses "ipv4-match-fields"; @@ -316,7 +316,7 @@ module opendaylight-match-types { uses "arp-match-fields"; } } - + choice layer-4-match { case "udp-match" { uses "udp-match-fields"; @@ -328,15 +328,15 @@ module opendaylight-match-types { uses "sctp-match-fields"; } } - + container "icmpv4-match" { uses "icmpv4-match-fields"; } - + container "icmpv6-match" { uses "icmpv6-match-fields"; } - + container "protocol-match-fields" { uses "protocol-match-fields"; } -- 2.36.6