+ ext:augment-identifier "bos-match-entry";\r
+ leaf bos {\r
+ type boolean;\r
+ }\r
+ }\r
+ augment "/oxm:oxm-container/oxm:match-entries" {\r
+ ext:augment-identifier "isid-match-entry";\r
+ leaf isid {\r
+ type uint32;\r
+ }\r
+ }\r
+ augment "/oxm:oxm-container/oxm:match-entries" {\r
+ ext:augment-identifier "pseudo-field-match-entry";\r
+ leaf pseudo-field {\r
+ type oft:ipv6-exthdr-flags;\r
+ }\r
+ }\r
+ augment "/oxm:oxm-container/oxm:match-entries" {\r
+ ext:augment-identifier "experimenter-match-entry";\r
+ leaf experimenter {\r
+ type uint32;\r
+ }\r
+ }\r
+ augment "/oxm:oxm-container/oxm:match-entries" {\r
+ ext:augment-identifier "tcp-flag-match-entry";\r
+ leaf tcp-flag {\r
+ type uint16;\r
+ }\r
+ }\r
+ augment "/oxm:oxm-container/oxm:match-entries" {\r
+ ext:augment-identifier "tunnel-ipv4-dst-match-entry";\r
+ leaf tunnel-ipv4-dst {\r
+ type inet:ipv4-address;\r
+ }\r
+ }\r
+ augment "/oxm:oxm-container/oxm:match-entries" {\r
+ ext:augment-identifier "tunnel-ipv4-src-match-entry";\r
+ leaf tunnel-ipv4-src {\r
+ type inet:ipv4-address;\r
+ }\r
+ }\r
+\r
+// OFP_ACTION AUGMENTS\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "port-action";\r
+ leaf port {\r
+ type oft:port-number;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "max-length-action";\r
+ leaf max-length {\r
+ type uint16;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "mpls-ttl-action";\r
+ leaf mpls-ttl {\r
+ type uint8;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "ethertype-action";\r
+ leaf ethertype {\r
+ type oft:ether-type;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "queue-id-action";\r
+ leaf queue-id {\r
+ type uint32;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "group-id-action";\r
+ leaf group-id {\r
+ type uint32;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "nw-ttl-action";\r
+ leaf nw-ttl {\r
+ type uint8;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "oxm-fields-action";\r
+ uses oxm:oxm-fields-grouping;\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "experimenter-action";\r
+ leaf experimenter {\r
+ type uint32;\r
+ }\r
+ leaf data {\r
+ type binary;\r
+ }\r
+ }\r
+ // OF1.0 structures\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "vlan-vid-action";\r
+ leaf vlan-vid {\r
+ type uint16;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "vlan-pcp-action";\r
+ leaf vlan-pcp {\r
+ type uint8;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "dl-address-action";\r
+ leaf dl-address {\r
+ type yang:mac-address;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "nw-tos-action";\r
+ leaf nw-tos {\r
+ type uint8;\r
+ }\r
+ }\r
+ augment "/ofaction:actions-container/ofaction:action" {\r
+ ext:augment-identifier "ip-address-action";\r
+ leaf ip-address {\r
+ type inet:ipv4-address;\r
+ }\r
+ }\r
+\r
+// OFP_TABLE_FEATURES_PROPERTIES AUGMENTS\r
+ augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
+ ext:augment-identifier "instruction-related-table-feature-property";\r
+ uses ofinstruction:instructions-grouping;\r
+ }\r
+ augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
+ ext:augment-identifier "next-table-related-table-feature-property";\r
+ list next-table-ids {\r
+ config false;\r
+ leaf table-id {\r
+ type uint8;\r
+ }\r
+ }\r
+ }\r
+ augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
+ ext:augment-identifier "action-related-table-feature-property";\r
+ uses ofaction:actions-grouping;\r
+ }\r
+ augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
+ ext:augment-identifier "oxm-related-table-feature-property";\r
+ uses oxm:oxm-fields-grouping;\r
+ }\r
+ augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
+ ext:augment-identifier "experimenter-related-table-feature-property";\r
+ leaf experimenter {\r
+ type uint32;\r
+ }\r
+ leaf exp-type {\r
+ type uint32;\r
+ }\r
+ leaf data {\r
+ type binary;\r
+ }\r
+ }\r
+\r
+// OFP_INSTRUCTION AUGMENTS\r
+ augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
+ ext:augment-identifier "table-id-instruction";\r
+ leaf table-id {\r
+ type uint8;\r
+ }\r
+ }\r
+ augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
+ ext:augment-identifier "metadata-instruction";\r
+ leaf metadata {\r
+ type binary;\r
+ }\r
+ leaf metadata-mask {\r
+ type binary;\r
+ }\r
+ }\r
+ augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
+ ext:augment-identifier "actions-instruction";\r
+ uses ofaction:actions-grouping;\r
+ }\r
+ augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
+ ext:augment-identifier "meter-id-instruction";\r
+ leaf meter-id {\r
+ type uint32;\r
+ }\r
+ }\r
+ augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
+ ext:augment-identifier "experimenter-instruction";\r
+ leaf experimenter {\r
+ type uint32;\r
+ }\r
+ leaf data {\r
+ type binary;\r
+ }\r
+ }\r
+ \r
+// OFP_QUEUE_PROP AUGMENTS\r
+ augment "/ofproto:queue-prop-container/ofproto:queue-property" {\r
+ ext:augment-identifier "rate-queue-property";\r
+ leaf rate {\r
+ type uint16;\r
+ }\r
+ }\r
+ augment "/ofproto:queue-prop-container/ofproto:queue-property" {\r
+ ext:augment-identifier "experimenter-queue-property";\r
+ leaf experimenter {\r
+ type uint32;\r
+ }\r
+ leaf data {\r
+ type binary;\r
+ }\r
+ }\r
+ \r
+// OFP_ERROR_AUGMENTS (only experimenter till OpenFlow v1.3)\r
+ augment "/ofproto:error-message" {\r
+ ext:augment-identifier "experimenter-error";\r
+ leaf exp_type {\r
+ type uint16;\r
+ }\r
+ leaf experimenter {\r
+ type uint32;\r
+ }\r
+ leaf exp-data {\r
+ type binary;\r
+ }\r