module vpp-routing{ namespace "urn:ietf:params:xml:ns:yang:vpp-routing"; prefix "vpp-routing"; import yang-ext { prefix "ext"; } import vpp-classifier { prefix "classifier"; } import hc2vpp-ietf-routing { prefix "ietf-r"; } description "General extensions for routes to be able to use VPP route defining apis"; revision 2017-09-17 { description "Support for table lookup option moved to separate model."; } revision 2016-12-14 { description "Initial revision."; } typedef vni-reference{ type uint32; description "Vrf index reference"; } grouping vpp-route-attributes { leaf classify-table{ // classify_table_index + is_classify flag type classifier:classify-table-ref; description "Optional reference to classify table"; } } grouping vpp-routing-protocol-attributes{ //vrf_id leaf primary-vrf{ type vni-reference; mandatory true; description "Main vrf associated to route"; } } augment /ietf-r:routing/ietf-r:routing-instance/ietf-r:routing-protocols/ietf-r:routing-protocol{ ext:augment-identifier "routing-protocol-vpp-attr"; container vpp-protocol-attributes { presence "Config attributes"; uses vpp-routing-protocol-attributes; } } augment /ietf-r:routing-state/ietf-r:routing-instance/ietf-r:routing-protocols/ietf-r:routing-protocol{ ext:augment-identifier "routing-protocol-state-vpp-attr"; container vpp-protocol-state-attributes { presence "Operational attributes"; uses vpp-routing-protocol-attributes; } } }