/* * Copyright (c) 2013 Pantheon Technologies s.r.o. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ module openflow-augments { namespace "urn:opendaylight:openflow:augments"; prefix "aug"; import yang-ext {prefix ext;} import ietf-inet-types {prefix inet;} import ietf-yang-types {prefix yang;} import openflow-types {prefix oft;} import openflow-protocol {prefix ofproto;} import openflow-action {prefix ofaction;} import openflow-instruction {prefix ofinstruction;} import openflow-extensible-match {prefix oxm;} revision "2015-02-25" { description "#NOT_PUBLISHED# OpenFlow 1.3 - augments model. Please visit https://wiki.opendaylight.org/view/File:OpenFlow_Protocol_Library_-_Project_documentation.pdf - Augmentation Tables chapter"; } // OFP_MATCH AUGMENTS augment "/oxm:oxm-container/oxm:match-entry-value" { ext:augment-identifier "experimenter-id-match-entry"; case experimenter-id-case { container experimenter { leaf experimenter { type oft:experimenter-id; } } } } // OFP_ACTION AUGMENTS augment "/ofaction:action-container/ofaction:action-choice" { ext:augment-identifier "experimenter-id-action"; case experimenter-id-case { container experimenter { leaf experimenter { type oft:experimenter-id; } leaf sub-type { type identityref { base ofaction:experimenter-action-sub-type; } } } } } // OFP_TABLE_FEATURES_PROPERTIES AUGMENTS augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" { ext:augment-identifier "instruction-related-table-feature-property"; uses ofinstruction:instructions-grouping; } augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" { ext:augment-identifier "next-table-related-table-feature-property"; list next-table-ids { config false; leaf table-id { type uint8; } } } augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" { ext:augment-identifier "action-related-table-feature-property"; uses ofaction:actions-grouping; } augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" { ext:augment-identifier "oxm-related-table-feature-property"; uses oxm:match-entries-grouping; } augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" { ext:augment-identifier "experimenter-id-table-feature-property"; leaf experimenter { type oft:experimenter-id; } leaf exp-type { type uint32; } } // OFP_INSTRUCTION AUGMENTS augment "/ofinstruction:instruction-container/ofinstruction:instruction-choice" { case experimenter-id-case { container experimenter { leaf experimenter-id { type oft:experimenter-id; } } } } // OFP_QUEUE_PROP AUGMENTS augment "/ofproto:queue-prop-container/ofproto:queue-property" { ext:augment-identifier "rate-queue-property"; leaf rate { type uint16; } } augment "/ofproto:queue-prop-container/ofproto:queue-property" { ext:augment-identifier "experimenter-id-queue-property"; leaf experimenter { type oft:experimenter-id; } } // OFP_ERROR_AUGMENTS (only experimenter till OpenFlow v1.3) augment "/ofproto:error-message" { ext:augment-identifier "experimenter-id-error"; leaf experimenter { type oft:experimenter-id; } } // OFP_METER_BAND AUGMENTS augment "/ofproto:meter-band-container/ofproto:meter-band/ofproto:meter-band-experimenter-case/ofproto:meter-band-experimenter" { ext:augment-identifier "experimenter-id-meter-band"; leaf experimenter { type oft:experimenter-id; } leaf sub-type { type identityref { base oft:experimenter-meter-band-sub-type; } } } }