]>
Commit | Line | Data |
---|---|---|
2228b116 | 1 | submodule frr-bgp-common-multiprotocol { |
2 | yang-version 1.1; | |
3 | ||
4 | belongs-to frr-bgp { | |
5 | prefix "bgp"; | |
6 | } | |
7 | ||
8 | import frr-routing { | |
9 | prefix frr-rt; | |
10 | } | |
11 | ||
12 | include frr-bgp-common; | |
13 | ||
14 | organization | |
15 | "FRRouting"; | |
16 | contact | |
17 | "FRR Users List: <mailto:frog@lists.frrouting.org> FRR Development | |
18 | List: <mailto:dev@lists.frrouting.org>"; | |
19 | description | |
20 | "This module contains general data definitions for use in BGP | |
21 | Multiprotocol. | |
22 | ||
23 | Copyright 2020 FRRouting | |
24 | ||
25 | Redistribution and use in source and binary forms, with or without | |
26 | modification, are permitted provided that the following conditions | |
27 | are met: | |
28 | ||
29 | 1. Redistributions of source code must retain the above copyright notice, | |
30 | this list of conditions and the following disclaimer. | |
31 | ||
32 | 2. Redistributions in binary form must reproduce the above copyright | |
33 | notice, this list of conditions and the following disclaimer in the | |
34 | documentation and/or other materials provided with the distribution. | |
35 | ||
36 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | |
37 | \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | |
38 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | |
39 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | |
40 | HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
41 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | |
42 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
43 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
44 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
45 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |
46 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."; | |
47 | ||
48 | revision 2019-12-03 { | |
49 | description | |
50 | "Initial revision."; | |
51 | } | |
52 | ||
53 | grouping mp-afi-safi-config { | |
54 | description | |
55 | "Configuration parameters used for all BGP AFI-SAFIs."; | |
56 | leaf afi-safi-name { | |
57 | type identityref { | |
58 | base frr-rt:afi-safi-type; | |
59 | } | |
60 | description | |
61 | "AFI, SAFI."; | |
62 | } | |
63 | } | |
64 | ||
65 | grouping mp-all-afi-safi-list-contents { | |
66 | description | |
67 | "A common grouping used for contents of the list that is used | |
68 | for AFI-SAFI entries."; | |
69 | container ipv4-unicast { | |
70 | when "derived-from-or-self(../afi-safi-name, 'ipv4-unicast')" { | |
71 | description | |
72 | "Include this container for IPv4 Unicast specific | |
73 | configuration."; | |
74 | } | |
75 | description | |
76 | "IPv4 unicast configuration options."; | |
77 | } | |
78 | ||
79 | container ipv6-unicast { | |
80 | when "derived-from-or-self(../afi-safi-name, 'ipv6-unicast')" { | |
81 | description | |
82 | "Include this container for IPv6 Unicast specific | |
83 | configuration."; | |
84 | } | |
85 | description | |
86 | "IPv6 unicast configuration options."; | |
87 | } | |
88 | ||
89 | container ipv4-labeled-unicast { | |
90 | when "derived-from-or-self(../afi-safi-name, 'ipv4-labeled-unicast')" { | |
91 | description | |
92 | "Include this container for IPv4 Labeled Unicast specific | |
93 | configuration."; | |
94 | } | |
95 | description | |
96 | "IPv4 Labeled Unicast configuration options."; | |
97 | } | |
98 | ||
99 | container ipv6-labeled-unicast { | |
100 | when "derived-from-or-self(../afi-safi-name, 'ipv6-labeled-unicast')" { | |
101 | description | |
102 | "Include this container for IPv6 Labeled Unicast specific | |
103 | configuration."; | |
104 | } | |
105 | description | |
106 | "IPv6 Labeled Unicast configuration options."; | |
107 | } | |
108 | ||
109 | container l3vpn-ipv4-unicast { | |
110 | when "derived-from-or-self(../afi-safi-name, 'l3vpn-ipv4-unicast')" { | |
111 | description | |
112 | "Include this container for IPv4 Unicast L3VPN specific | |
113 | configuration."; | |
114 | } | |
115 | description | |
116 | "Unicast IPv4 L3VPN configuration options."; | |
117 | } | |
118 | ||
119 | container l3vpn-ipv6-unicast { | |
120 | when "derived-from-or-self(../afi-safi-name, 'l3vpn-ipv6-unicast')" { | |
121 | description | |
122 | "Include this container for unicast IPv6 L3VPN specific | |
123 | configuration."; | |
124 | } | |
125 | description | |
126 | "Unicast IPv6 L3VPN configuration options."; | |
127 | } | |
128 | ||
129 | container l3vpn-ipv4-multicast { | |
130 | when "derived-from-or-self(../afi-safi-name, 'l3vpn-ipv4-multicast')" { | |
131 | description | |
132 | "Include this container for multicast IPv4 L3VPN specific | |
133 | configuration."; | |
134 | } | |
135 | description | |
136 | "Multicast IPv4 L3VPN configuration options."; | |
137 | } | |
138 | ||
139 | container l3vpn-ipv6-multicast { | |
140 | when "derived-from-or-self(../afi-safi-name, 'l3vpn-ipv6-multicast')" { | |
141 | description | |
142 | "Include this container for multicast IPv6 L3VPN specific | |
143 | configuration."; | |
144 | } | |
145 | description | |
146 | "Multicast IPv6 L3VPN configuration options."; | |
147 | } | |
148 | ||
149 | container l2vpn-vpls { | |
150 | when "derived-from-or-self(../afi-safi-name, 'l2vpn-vpls')" { | |
151 | description | |
152 | "Include this container for BGP-signalled VPLS specific | |
153 | configuration."; | |
154 | } | |
155 | description | |
156 | "BGP-signalled VPLS configuration options."; | |
157 | } | |
158 | ||
159 | container l2vpn-evpn { | |
160 | when "derived-from-or-self(../afi-safi-name, 'l2vpn-evpn')" { | |
161 | description | |
162 | "Include this container for BGP EVPN specific | |
163 | configuration."; | |
164 | } | |
165 | description | |
166 | "BGP EVPN configuration options."; | |
167 | } | |
168 | ||
169 | container ipv4-multicast { | |
170 | when "derived-from-or-self(../afi-safi-name, 'ipv4-multicast')" { | |
171 | description | |
172 | "Include this container for IPv4 multicast specific | |
173 | configuration."; | |
174 | } | |
175 | description | |
176 | "IPv4 multicast configuration options."; | |
177 | } | |
178 | ||
179 | container ipv6-multicast { | |
180 | when "derived-from-or-self(../afi-safi-name, 'ipv6-multicast')" { | |
181 | description | |
182 | "Include this container for IPv6 multicast specific | |
183 | configuration."; | |
184 | } | |
185 | description | |
186 | "IPv6 multicast configuration options."; | |
187 | } | |
188 | ||
189 | container ipv4-flowspec { | |
190 | when "derived-from-or-self(../afi-safi-name, 'ipv4-flowspec')" { | |
191 | description | |
192 | "Include this container for IPv4 flowspec specific | |
193 | configuration."; | |
194 | } | |
195 | description | |
196 | "IPv4 flowspec configuration options."; | |
197 | } | |
198 | ||
199 | container ipv6-flowspec { | |
200 | when "derived-from-or-self(../afi-safi-name, 'ipv6-flowspec')" { | |
201 | description | |
202 | "Include this container for IPv6 flowspec specific | |
203 | configuration."; | |
204 | } | |
205 | description | |
206 | "IPv6 flowspec configuration options."; | |
207 | } | |
208 | } | |
209 | } |