blob: 49884adacaa83457d7c27ca7b976f2631fd4aa52 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
module vpp-routing{
namespace "urn:ietf:params:xml:ns:yang:vpp-routing";
prefix "vpp-routing";
description "General extensions for routes to be able to use VPP route defining apis";
revision 2016-12-14 {
description "Initial revision.";
}
import yang-ext {
prefix "ext";
}
import vpp-classifier {
prefix "classifier";
}
import ietf-routing {
prefix "ietf-r";
}
typedef vni-reference{
type uint32;
description "Vrf index reference";
}
grouping vpp-route-attributes {
//lookup_in_vrf
leaf secondary-vrf{
type vni-reference;
description "Optional secondary vrf used to lookup in";
}
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;
}
}
}
|