Coverage Report

Created: 2025-10-23 06:55

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/frr/yang/frr-bgp-route-map.yang.c
Line
Count
Source
1
/* autogenerated by embedmodel.py.  DO NOT EDIT */
2
3
#include <zebra.h>
4
#include "yang.h"
5
6
static const char model[] =
7
  "module frr-bgp-route-map {\n"
8
  "  yang-version 1.1;\n"
9
  "  namespace \"http://frrouting.org/yang/bgp-route-map\";\n"
10
  "  prefix frr-bgp-route-map;\n"
11
  "\n"
12
  "  import ietf-inet-types {\n"
13
  "    prefix inet;\n"
14
  "  }\n"
15
  "\n"
16
  "  import frr-route-map {\n"
17
  "    prefix frr-route-map;\n"
18
  "  }\n"
19
  "\n"
20
  "  import frr-filter {\n"
21
  "    prefix filter;\n"
22
  "  }\n"
23
  "\n"
24
  "  import frr-bgp-filter {\n"
25
  "    prefix bgp-filter;\n"
26
  "  }\n"
27
  "\n"
28
  "  import ietf-routing-types {\n"
29
  "    prefix rt-types;\n"
30
  "  }\n"
31
  "\n"
32
  "  import frr-route-types {\n"
33
  "    prefix frr-route-types;\n"
34
  "  }\n"
35
  "\n"
36
  "  organization\n"
37
  "    \"Free Range Routing\";\n"
38
  "  contact\n"
39
  "    \"FRR Users List:       <mailto:frog@lists.frrouting.org>\n"
40
  "     FRR Development List: <mailto:dev@lists.frrouting.org>\";\n"
41
  "  description\n"
42
  "    \"This module defines bgp route map settings\";\n"
43
  "\n"
44
  "  revision 2020-01-02 {\n"
45
  "    description\n"
46
  "      \"Initial revision\";\n"
47
  "  }\n"
48
  "\n"
49
  "  identity match-alias {\n"
50
  "    base frr-route-map:rmap-match-type;\n"
51
  "    description\n"
52
  "      \"Match BGP community alias name\";\n"
53
  "  }\n"
54
  "\n"
55
  "  identity match-local-preference {\n"
56
  "    base frr-route-map:rmap-match-type;\n"
57
  "    description\n"
58
  "      \"Match local-preference of routes\";\n"
59
  "  }\n"
60
  "\n"
61
  "  identity match-script {\n"
62
  "    base frr-route-map:rmap-match-type;\n"
63
  "    description\n"
64
  "      \"Match script of routes\";\n"
65
  "  }\n"
66
  "\n"
67
  "  identity match-origin {\n"
68
  "    base frr-route-map:rmap-match-type;\n"
69
  "    description\n"
70
  "      \"Match BGP route origin code\";\n"
71
  "  }\n"
72
  "\n"
73
  "  identity rpki {\n"
74
  "    base frr-route-map:rmap-match-type;\n"
75
  "    description\n"
76
  "      \"Control rpki specific settings\";\n"
77
  "  }\n"
78
  "\n"
79
  "  identity rpki-extcommunity {\n"
80
  "    base frr-route-map:rmap-match-type;\n"
81
  "    description\n"
82
  "      \"Control rpki specific settings derived from extended community\";\n"
83
  "  }\n"
84
  "\n"
85
  "  identity probability {\n"
86
  "    base frr-route-map:rmap-match-type;\n"
87
  "    description\n"
88
  "      \"Match portion of routes defined by percentage value\";\n"
89
  "  }\n"
90
  "\n"
91
  "  identity source-vrf {\n"
92
  "    base frr-route-map:rmap-match-type;\n"
93
  "    description\n"
94
  "      \"Match source vrf of routes\";\n"
95
  "  }\n"
96
  "\n"
97
  "  identity peer {\n"
98
  "    base frr-route-map:rmap-match-type;\n"
99
  "    description\n"
100
  "      \"Match peer address\";\n"
101
  "  }\n"
102
  "\n"
103
  "  identity mac-address-list {\n"
104
  "    base frr-route-map:rmap-match-type;\n"
105
  "    description\n"
106
  "      \"Match MAC address access-list\";\n"
107
  "  }\n"
108
  "\n"
109
  "  identity ip-route-source {\n"
110
  "    base frr-route-map:rmap-match-type;\n"
111
  "    description\n"
112
  "      \"Match advertising source address of route\";\n"
113
  "  }\n"
114
  "\n"
115
  "  identity ip-route-source-prefix-list {\n"
116
  "    base frr-route-map:rmap-match-type;\n"
117
  "    description\n"
118
  "      \"Match advertising source address of route\";\n"
119
  "  }\n"
120
  "\n"
121
  "  identity evpn-route-type {\n"
122
  "    base frr-route-map:rmap-match-type;\n"
123
  "    description\n"
124
  "      \"Match EVPN route type\";\n"
125
  "  }\n"
126
  "\n"
127
  "  identity evpn-default-route {\n"
128
  "    base frr-route-map:rmap-match-type;\n"
129
  "    description\n"
130
  "      \"Match EVPN default Type-5 route\";\n"
131
  "  }\n"
132
  "\n"
133
  "  identity evpn-vni {\n"
134
  "    base frr-route-map:rmap-match-type;\n"
135
  "    description\n"
136
  "      \"Match EVPN VNI\";\n"
137
  "  }\n"
138
  "\n"
139
  "  identity evpn-rd {\n"
140
  "    base frr-route-map:rmap-match-type;\n"
141
  "    description\n"
142
  "      \"Match EVPN route distinguisher\";\n"
143
  "  }\n"
144
  "\n"
145
  "  identity match-community {\n"
146
  "    base frr-route-map:rmap-match-type;\n"
147
  "    description\n"
148
  "      \"Match BGP community list\";\n"
149
  "  }\n"
150
  "\n"
151
  "  identity match-large-community {\n"
152
  "    base frr-route-map:rmap-match-type;\n"
153
  "    description\n"
154
  "      \"Match BGP large-community list\";\n"
155
  "  }\n"
156
  "\n"
157
  "  identity match-extcommunity {\n"
158
  "    base frr-route-map:rmap-match-type;\n"
159
  "    description\n"
160
  "      \"Match BGP extcommunity list\";\n"
161
  "  }\n"
162
  "\n"
163
  "  identity as-path-list {\n"
164
  "    base frr-route-map:rmap-match-type;\n"
165
  "    description\n"
166
  "      \"Match BGP AS path list\";\n"
167
  "  }\n"
168
  "\n"
169
  "  identity ipv4-nexthop {\n"
170
  "    base frr-route-map:rmap-match-type;\n"
171
  "    description\n"
172
  "      \"Match IPv4 next hop address\";\n"
173
  "  }\n"
174
  "\n"
175
  "  identity ipv6-nexthop {\n"
176
  "    base frr-route-map:rmap-match-type;\n"
177
  "    description\n"
178
  "      \"Match IPv6 next hop address\";\n"
179
  "  }\n"
180
  "\n"
181
  "  identity source-protocol {\n"
182
  "    base frr-route-map:rmap-match-type;\n"
183
  "    description\n"
184
  "      \"Match protocol via which the route was learnt\";\n"
185
  "  }\n"
186
  "\n"
187
  "  identity distance {\n"
188
  "    base frr-route-map:rmap-set-type;\n"
189
  "    description\n"
190
  "      \"Set BGP administrative distance to use\";\n"
191
  "  }\n"
192
  "\n"
193
  "  identity set-extcommunity-none {\n"
194
  "    base frr-route-map:rmap-set-type;\n"
195
  "    description\n"
196
  "      \"Set BGP extended community attribute\";\n"
197
  "  }\n"
198
  "\n"
199
  "  identity set-extcommunity-rt {\n"
200
  "    base frr-route-map:rmap-set-type;\n"
201
  "    description\n"
202
  "      \"Set BGP extended community attribute\";\n"
203
  "  }\n"
204
  "\n"
205
  "  identity set-extcommunity-nt {\n"
206
  "    base frr-route-map:rmap-set-type;\n"
207
  "    description\n"
208
  "      \"Set BGP extended community attribute\";\n"
209
  "  }\n"
210
  "\n"
211
  "  identity set-extcommunity-soo {\n"
212
  "    base frr-route-map:rmap-set-type;\n"
213
  "    description\n"
214
  "      \"Set BGP extended community attribute\";\n"
215
  "  }\n"
216
  "\n"
217
  "  identity set-extcommunity-lb {\n"
218
  "    base frr-route-map:rmap-set-type;\n"
219
  "    description\n"
220
  "      \"Set BGP extended community attribute\";\n"
221
  "  }\n"
222
  "\n"
223
  "  identity set-ipv4-nexthop {\n"
224
  "    base frr-route-map:rmap-set-type;\n"
225
  "    description\n"
226
  "      \"Set the IPv4 next-hop to peer-address/unchanged\";\n"
227
  "  }\n"
228
  "\n"
229
  "  identity ipv4-vpn-address {\n"
230
  "    base frr-route-map:rmap-set-type;\n"
231
  "    description\n"
232
  "      \"Set IPv4 VPN next-hop address\";\n"
233
  "  }\n"
234
  "\n"
235
  "  identity ipv6-nexthop-global {\n"
236
  "    base frr-route-map:rmap-set-type;\n"
237
  "    description\n"
238
  "      \"Set IPv6 next-hop global address\";\n"
239
  "  }\n"
240
  "\n"
241
  "  identity ipv6-prefer-global {\n"
242
  "    base frr-route-map:rmap-set-type;\n"
243
  "    description\n"
244
  "      \"Set IPv6 next-hop to prefer global address\";\n"
245
  "  }\n"
246
  "\n"
247
  "  identity ipv6-peer-address {\n"
248
  "    base frr-route-map:rmap-set-type;\n"
249
  "    description\n"
250
  "      \"Set IPv6 next-hop peer address\";\n"
251
  "  }\n"
252
  "\n"
253
  "  identity ipv6-vpn-address {\n"
254
  "    base frr-route-map:rmap-set-type;\n"
255
  "    description\n"
256
  "      \"Set IPv6 VPN next-hop address\";\n"
257
  "  }\n"
258
  "\n"
259
  "  identity label-index {\n"
260
  "    base frr-route-map:rmap-set-type;\n"
261
  "    description\n"
262
  "      \"Set the label index to associate with the prefixs\";\n"
263
  "  }\n"
264
  "\n"
265
  "  identity set-local-preference {\n"
266
  "    base frr-route-map:rmap-set-type;\n"
267
  "    description\n"
268
  "      \"Set the BGP local preference path attribute\";\n"
269
  "  }\n"
270
  "\n"
271
  "  identity set-origin {\n"
272
  "    base frr-route-map:rmap-set-type;\n"
273
  "    description\n"
274
  "      \"Set BGP route origin code\";\n"
275
  "  }\n"
276
  "\n"
277
  "  identity weight {\n"
278
  "    base frr-route-map:rmap-set-type;\n"
279
  "    description\n"
280
  "      \"Set the BGP weight attribute\";\n"
281
  "  }\n"
282
  "\n"
283
  "  identity originator-id {\n"
284
  "    base frr-route-map:rmap-set-type;\n"
285
  "    description\n"
286
  "      \"Set the BGP originator ID attribute\";\n"
287
  "  }\n"
288
  "\n"
289
  "  identity table {\n"
290
  "    base frr-route-map:rmap-set-type;\n"
291
  "    description\n"
292
  "      \"Export route to non-main kernel table\";\n"
293
  "  }\n"
294
  "\n"
295
  "  identity atomic-aggregate {\n"
296
  "    base frr-route-map:rmap-set-type;\n"
297
  "    description\n"
298
  "      \"Set BGP atomic-aggregate attribute\";\n"
299
  "  }\n"
300
  "\n"
301
  "  identity aigp-metric {\n"
302
  "    base frr-route-map:rmap-set-type;\n"
303
  "    description\n"
304
  "      \"Set BGP AIGP attribute (AIGP TLV Metric)\";\n"
305
  "  }\n"
306
  "\n"
307
  "  identity as-path-prepend {\n"
308
  "    base frr-route-map:rmap-set-type;\n"
309
  "    description\n"
310
  "      \"Set the BGP AS-path attribute\";\n"
311
  "  }\n"
312
  "\n"
313
  "  identity as-path-exclude {\n"
314
  "    base frr-route-map:rmap-set-type;\n"
315
  "    description\n"
316
  "      \"Set the BGP AS-path attribute\";\n"
317
  "  }\n"
318
  "\n"
319
  "  identity as-path-replace {\n"
320
  "    base frr-route-map:rmap-set-type;\n"
321
  "    description\n"
322
  "      \"Replace ASNs to local AS number\";\n"
323
  "  }\n"
324
  "\n"
325
  "  identity set-community {\n"
326
  "    base frr-route-map:rmap-set-type;\n"
327
  "    description\n"
328
  "      \"Set the BGP community attribute\";\n"
329
  "  }\n"
330
  "\n"
331
  "  identity set-large-community {\n"
332
  "    base frr-route-map:rmap-set-type;\n"
333
  "    description\n"
334
  "      \"Set the BGP large-community attribute\";\n"
335
  "  }\n"
336
  "\n"
337
  "  identity aggregator {\n"
338
  "    base frr-route-map:rmap-set-type;\n"
339
  "    description\n"
340
  "      \"Set the BGP aggregator attribute\";\n"
341
  "  }\n"
342
  "\n"
343
  "  identity comm-list-delete {\n"
344
  "    base frr-route-map:rmap-set-type;\n"
345
  "    description\n"
346
  "      \"Set BGP community list (for deletion)\";\n"
347
  "  }\n"
348
  "\n"
349
  "  identity large-comm-list-delete {\n"
350
  "    base frr-route-map:rmap-set-type;\n"
351
  "    description\n"
352
  "      \"Set BGP large community list (for deletion)\";\n"
353
  "  }\n"
354
  "\n"
355
  "  identity set-evpn-gateway-ip-ipv4 {\n"
356
  "    base frr-route-map:rmap-set-type;\n"
357
  "    description\n"
358
  "      \"Set EVPN gateway IP overlay index IPv4\";\n"
359
  "  }\n"
360
  "\n"
361
  "  identity set-evpn-gateway-ip-ipv6 {\n"
362
  "    base frr-route-map:rmap-set-type;\n"
363
  "    description\n"
364
  "      \"Set EVPN gateway IP overlay index IPv6\";\n"
365
  "  }\n"
366
  "\n"
367
  "  identity set-l3vpn-nexthop-encapsulation {\n"
368
  "    base frr-route-map:rmap-set-type;\n"
369
  "    description\n"
370
  "      \"Accept L3VPN traffic over other than LSP encapsulation\";\n"
371
  "  }\n"
372
  "\n"
373
  "  grouping extcommunity-non-transitive-types {\n"
374
  "    leaf two-octet-as-specific {\n"
375
  "      type boolean;\n"
376
  "      description\n"
377
  "        \"Non-Transitive Two-Octet AS-Specific Extended Community\";\n"
378
  "    }\n"
379
  "  }\n"
380
  "\n"
381
  "  typedef route-distinguisher {\n"
382
  "    type string {\n"
383
  "      pattern\n"
384
  "        \'(0:(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|\'\n"
385
  "      +     \'6[0-4][0-9]{3}|\'\n"
386
  "      +     \'[1-5][0-9]{4}|[1-9][0-9]{0,3}|0):(429496729[0-5]|\'\n"
387
  "      +     \'42949672[0-8][0-9]|\'\n"
388
  "      +     \'4294967[01][0-9]{2}|429496[0-6][0-9]{3}|\'\n"
389
  "      +     \'42949[0-5][0-9]{4}|\'\n"
390
  "      +     \'4294[0-8][0-9]{5}|429[0-3][0-9]{6}|\'\n"
391
  "      +     \'42[0-8][0-9]{7}|4[01][0-9]{8}|\'\n"
392
  "      +     \'[1-3][0-9]{9}|[1-9][0-9]{0,8}|0))|\'\n"
393
  "      + \'(1:((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|\'\n"
394
  "      +     \'25[0-5])\\.){3}([0-9]|[1-9][0-9]|\'\n"
395
  "      +     \'1[0-9]{2}|2[0-4][0-9]|25[0-5])):(6553[0-5]|\'\n"
396
  "      +     \'655[0-2][0-9]|\'\n"
397
  "      +     \'65[0-4][0-9]{2}|6[0-4][0-9]{3}|\'\n"
398
  "      +     \'[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|\'\n"
399
  "      + \'(2:(429496729[0-5]|42949672[0-8][0-9]|\'\n"
400
  "      +     \'4294967[01][0-9]{2}|\'\n"
401
  "      +     \'429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|\'\n"
402
  "      +     \'4294[0-8][0-9]{5}|\'\n"
403
  "      +     \'429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|\'\n"
404
  "      +     \'[1-3][0-9]{9}|[1-9][0-9]{0,8}|0):\'\n"
405
  "      +     \'(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|\'\n"
406
  "      +     \'6[0-4][0-9]{3}|\'\n"
407
  "      +     \'[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|\'\n"
408
  "      + \'(6(:[a-fA-F0-9]{2}){6})|\'\n"
409
  "      + \'(([3-57-9a-fA-F]|[1-9a-fA-F][0-9a-fA-F]{1,3}):\'\n"
410
  "      +     \'[0-9a-fA-F]{1,12})|\'\n"
411
  "      +  \'((6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|\'\n"
412
  "      +     \'6[0-4][0-9]{3}|\'\n"
413
  "      +     \'[1-5][0-9]{4}|[1-9][0-9]{0,3}|0):(429496729[0-5]|\'\n"
414
  "      +     \'42949672[0-8][0-9]|\'\n"
415
  "      +     \'4294967[01][0-9]{2}|429496[0-6][0-9]{3}|\'\n"
416
  "      +     \'42949[0-5][0-9]{4}|\'\n"
417
  "      +     \'4294[0-8][0-9]{5}|429[0-3][0-9]{6}|\'\n"
418
  "      +     \'42[0-8][0-9]{7}|4[01][0-9]{8}|\'\n"
419
  "      +     \'[1-3][0-9]{9}|[1-9][0-9]{0,8}|0)|\'\n"
420
  "      +  \'((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|\'\n"
421
  "      +     \'25[0-5])\\.){3}([0-9]|[1-9][0-9]|\'\n"
422
  "      +     \'1[0-9]{2}|2[0-4][0-9]|25[0-5])):(6553[0-5]|\'\n"
423
  "      +     \'655[0-2][0-9]|\'\n"
424
  "      +     \'65[0-4][0-9]{2}|6[0-4][0-9]{3}|\'\n"
425
  "      +     \'[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|\'\n"
426
  "      + \'((429496729[0-5]|42949672[0-8][0-9]|\'\n"
427
  "      +     \'4294967[01][0-9]{2}|\'\n"
428
  "      +     \'429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|\'\n"
429
  "      +     \'4294[0-8][0-9]{5}|\'\n"
430
  "      +     \'429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|\'\n"
431
  "      +     \'[1-3][0-9]{9}|[1-9][0-9]{0,8}|0):\'\n"
432
  "      +     \'(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|\'\n"
433
  "      +     \'6[0-4][0-9]{3}|\'\n"
434
  "      +     \'[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|\'\n"
435
  "      +  \'((6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|\'\n"
436
  "      +     \'6[0-4][0-9]{3}|\'\n"
437
  "      +     \'[1-5][0-9]{4}|[1-9][0-9]{0,3}|0).\'\n"
438
  "      +  \'(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|\'\n"
439
  "      +     \'6[0-4][0-9]{3}|\'\n"
440
  "      +     \'[1-5][0-9]{4}|[1-9][0-9]{0,3}|0):\'\n"
441
  "      +     \'(429496729[0-5]|42949672[0-8][0-9]|\'\n"
442
  "      +     \'4294967[01][0-9]{2}|\'\n"
443
  "      +     \'429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|\'\n"
444
  "      +     \'4294[0-8][0-9]{5}|\'\n"
445
  "      +     \'429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|\'\n"
446
  "      +     \'[1-3][0-9]{9}|[1-9][0-9]{0,8}|0))\';\n"
447
  "    }\n"
448
  "\n"
449
  "    description\n"
450
  "      \"A Route Distinguisher is an 8-octet value used to\n"
451
  "       distinguish routes from different BGP VPNs (RFC 4364).\n"
452
  "       A Route Distinguisher will have the same format as a\n"
453
  "       Route Target as per RFC 4360 and will consist of\n"
454
  "       two or three fields: a 2-octet Type field, an administrator\n"
455
  "       field, and, optionally, an assigned number field.\n"
456
  "       According to the data formats for types 0, 1, 2, and 6 as\n"
457
  "       defined in RFC 4360, RFC 5668, and RFC 7432, the encoding\n"
458
  "       pattern is defined as:\n"
459
  "       0:2-octet-asn:4-octet-number\n"
460
  "       1:4-octet-ipv4addr:2-octet-number\n"
461
  "       2:4-octet-asn:2-octet-number\n"
462
  "       6:6-octet-mac-address\n"
463
  "       Additionally, a generic pattern is defined for future\n"
464
  "       route discriminator types:\n"
465
  "       2-octet-other-hex-number:6-octet-hex-number\n"
466
  "       Some valid examples are 0:100:100, 1:1.1.1.1:100,\n"
467
  "       2:1234567890:203, and 6:26:00:08:92:78:00.\n"
468
  "       The following route distinguisher with two fields are also\n"
469
  "       accepted : 10000:44 1.2.3.4:44.\";\n"
470
  "    reference\n"
471
  "      \"RFC 4360: BGP Extended Communities Attribute.\n"
472
  "       RFC 4364: BGP/MPLS IP Virtual Private Networks (VPNs).\n"
473
  "       RFC 5668: 4-Octet AS Specific BGP Extended Community.\n"
474
  "       RFC 7432: BGP MPLS-Based Ethernet VPN.\";\n"
475
  "  }\n"
476
  "\n"
477
  "  typedef extcommunity-lb-type {\n"
478
  "    type enumeration {\n"
479
  "      enum \"explicit-bandwidth\" {\n"
480
  "        value 0;\n"
481
  "        description\n"
482
  "          \"Bandwidth value in Mbps\";\n"
483
  "      }\n"
484
  "      enum \"cumulative-bandwidth\" {\n"
485
  "        value 1;\n"
486
  "       description\n"
487
  "          \"Cumulative bandwidth of all multipaths (outbound-only)\";\n"
488
  "      }\n"
489
  "      enum \"computed-bandwidth\" {\n"
490
  "        value 2;\n"
491
  "        description\n"
492
  "          \"Internally computed bandwidth based on number of multipaths (outbound-only)\";\n"
493
  "      }\n"
494
  "    }\n"
495
  "    description\n"
496
  "      \"ext-community link bandwidth types.\";\n"
497
  "  }\n"
498
  "\n"
499
  "  typedef asn-type {\n"
500
  "    type union {\n"
501
  "      type uint32 {\n"
502
  "        range \"1..4294967295\";\n"
503
  "      }\n"
504
  "      type string {\n"
505
  "        pattern \'(0|[1-9][0-9]{0,3}|[1-5][0-9]{4}|\'\n"
506
  "        +  \'6[0-4][0-9]{3}|65[0-4][0-9]{2}|\'\n"
507
  "        +  \'655[0-2][0-9]|6553[0-5])\\.\'\n"
508
  "        +  \'(0|[1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|\'\n"
509
  "        +  \'65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\' {\n"
510
  "          error-message \"AS dot should be in the form [0..65535].[0..65535].\";\n"
511
  "        }\n"
512
  "        pattern \'^0\\.0$\' {\n"
513
  "          modifier \"invert-match\";\n"
514
  "          error-message \"AS dot can\'t be equal to 0.0.\";\n"
515
  "        }\n"
516
  "      }\n"
517
  "    }\n"
518
  "  }\n"
519
  "\n"
520
  "  augment \"/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:rmap-match-condition/frr-route-map:match-condition\" {\n"
521
  "    case local-preference {\n"
522
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:match-local-preference\')\";\n"
523
  "      leaf local-preference {\n"
524
  "        type uint32 {\n"
525
  "          range \"0..4294967295\";\n"
526
  "        }\n"
527
  "      }\n"
528
  "    }\n"
529
  "\n"
530
  "    case alias {\n"
531
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:match-alias\')\";\n"
532
  "      leaf alias {\n"
533
  "        type string;\n"
534
  "      }\n"
535
  "    }\n"
536
  "\n"
537
  "    case script {\n"
538
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:match-script\')\";\n"
539
  "      leaf script {\n"
540
  "        type string;\n"
541
  "      }\n"
542
  "    }\n"
543
  "\n"
544
  "    case origin {\n"
545
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:match-origin\')\";\n"
546
  "      leaf origin {\n"
547
  "        type enumeration {\n"
548
  "          enum \"egp\" {\n"
549
  "            value 0;\n"
550
  "            description\n"
551
  "              \"Remote EGP\";\n"
552
  "          }\n"
553
  "          enum \"igp\" {\n"
554
  "            value 1;\n"
555
  "            description\n"
556
  "              \"Local IGP\";\n"
557
  "          }\n"
558
  "          enum \"incomplete\" {\n"
559
  "            value 2;\n"
560
  "            description\n"
561
  "              \"Unknown heritage\";\n"
562
  "          }\n"
563
  "        }\n"
564
  "      }\n"
565
  "    }\n"
566
  "\n"
567
  "    case rpki {\n"
568
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:rpki\')\";\n"
569
  "      leaf rpki {\n"
570
  "        type enumeration {\n"
571
  "          enum \"invalid\" {\n"
572
  "            value 0;\n"
573
  "            description\n"
574
  "              \"Invalid prefix\";\n"
575
  "          }\n"
576
  "          enum \"notfound\" {\n"
577
  "            value 1;\n"
578
  "            description\n"
579
  "              \"Prefix not found\";\n"
580
  "          }\n"
581
  "          enum \"valid\" {\n"
582
  "            value 2;\n"
583
  "            description\n"
584
  "              \"Valid prefix\";\n"
585
  "          }\n"
586
  "        }\n"
587
  "      }\n"
588
  "    }\n"
589
  "\n"
590
  "    case rpki-extcommunity {\n"
591
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:rpki-extcommunity\')\";\n"
592
  "      leaf rpki-extcommunity {\n"
593
  "        type enumeration {\n"
594
  "          enum \"valid\" {\n"
595
  "            value 0;\n"
596
  "            description\n"
597
  "              \"Valid prefix\";\n"
598
  "          }\n"
599
  "          enum \"notfound\" {\n"
600
  "            value 1;\n"
601
  "            description\n"
602
  "              \"Prefix not found\";\n"
603
  "          }\n"
604
  "          enum \"invalid\" {\n"
605
  "            value 2;\n"
606
  "            description\n"
607
  "              \"Invalid prefix\";\n"
608
  "          }\n"
609
  "        }\n"
610
  "      }\n"
611
  "    }\n"
612
  "\n"
613
  "    case probability {\n"
614
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:probability\')\";\n"
615
  "      leaf probability {\n"
616
  "        type uint8 {\n"
617
  "          range \"0..100\";\n"
618
  "        }\n"
619
  "      }\n"
620
  "    }\n"
621
  "\n"
622
  "    case source-vrf {\n"
623
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:source-vrf\')\";\n"
624
  "      leaf source-vrf {\n"
625
  "        type string;\n"
626
  "      }\n"
627
  "    }\n"
628
  "\n"
629
  "    case peer {\n"
630
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:peer\')\";\n"
631
  "      choice peer {\n"
632
  "        description\n"
633
  "          \"Value of the peer\";\n"
634
  "        case peer-ipv4-address {\n"
635
  "          description\n"
636
  "            \"IP address of peer\";\n"
637
  "          leaf peer-ipv4-address {\n"
638
  "            type inet:ipv4-address;\n"
639
  "          }\n"
640
  "        }\n"
641
  "\n"
642
  "        case peer-interface {\n"
643
  "          description\n"
644
  "            \"Interface name of peer\";\n"
645
  "          leaf peer-interface {\n"
646
  "            type string;\n"
647
  "          }\n"
648
  "        }\n"
649
  "\n"
650
  "        case peer-ipv6-address {\n"
651
  "          description\n"
652
  "            \"IPv6 address of peer\";\n"
653
  "          leaf peer-ipv6-address {\n"
654
  "            type inet:ipv6-address;\n"
655
  "          }\n"
656
  "        }\n"
657
  "\n"
658
  "        case peer-local {\n"
659
  "          description\n"
660
  "            \"Static or Redistributed routes\";\n"
661
  "          leaf peer-local {\n"
662
  "            type boolean;\n"
663
  "          }\n"
664
  "        }\n"
665
  "      }\n"
666
  "    }\n"
667
  "\n"
668
  "    case access-list-name {\n"
669
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:mac-address-list\') or \"\n"
670
  "        + \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:as-path-list\') or \"\n"
671
  "        + \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:ip-route-source\') or \"\n"
672
  "        + \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:ip-route-source-prefix-list\')\";\n"
673
  "      description\n"
674
  "        \"Access-list name\";\n"
675
  "      leaf list-name {\n"
676
  "        type filter:access-list-name;\n"
677
  "      }\n"
678
  "    }\n"
679
  "\n"
680
  "    case evpn-default-route {\n"
681
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:evpn-default-route\')\";\n"
682
  "      description\n"
683
  "        \"Match default EVPN type-5 route\";\n"
684
  "      leaf evpn-default-route {\n"
685
  "        type empty;\n"
686
  "      }\n"
687
  "    }\n"
688
  "\n"
689
  "    case evpn-vni {\n"
690
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:evpn-vni\')\";\n"
691
  "      description\n"
692
  "        \"Match eVPN VNI\";\n"
693
  "      leaf evpn-vni {\n"
694
  "        type uint32 {\n"
695
  "          range \"1..16777215\";\n"
696
  "        }\n"
697
  "      }\n"
698
  "    }\n"
699
  "\n"
700
  "    case evpn-route-type {\n"
701
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:evpn-route-type\')\";\n"
702
  "      description\n"
703
  "        \"Match eVPN route-type\";\n"
704
  "      leaf evpn-route-type {\n"
705
  "        type enumeration {\n"
706
  "          enum \"macip\" {\n"
707
  "            value 0;\n"
708
  "            description\n"
709
  "              \"Mac-IP route\";\n"
710
  "          }\n"
711
  "          enum \"multicast\" {\n"
712
  "            value 1;\n"
713
  "            description\n"
714
  "              \"IMET route\";\n"
715
  "          }\n"
716
  "          enum \"prefix\" {\n"
717
  "            value 2;\n"
718
  "            description\n"
719
  "              \"Prefix route\";\n"
720
  "          }\n"
721
  "          enum \"ead\" {\n"
722
  "            value 3;\n"
723
  "            description\n"
724
  "              \"Ethernet Auto-Discovery route\";\n"
725
  "          }\n"
726
  "          enum \"es\" {\n"
727
  "            value 4;\n"
728
  "            description\n"
729
  "              \"Ethernet Segment route\";\n"
730
  "          }\n"
731
  "        }\n"
732
  "      }\n"
733
  "    }\n"
734
  "\n"
735
  "    case evpn-rd {\n"
736
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:evpn-rd\')\";\n"
737
  "      description\n"
738
  "        \"Match eVPN route-distinguisher\";\n"
739
  "      leaf route-distinguisher {\n"
740
  "        type route-distinguisher;\n"
741
  "      }\n"
742
  "    }\n"
743
  "\n"
744
  "    case comm-list-name {\n"
745
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:match-community\') or \"\n"
746
  "        + \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:match-large-community\') or \"\n"
747
  "        + \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:match-extcommunity\')\";\n"
748
  "      container comm-list {\n"
749
  "        leaf comm-list-name {\n"
750
  "          type bgp-filter:bgp-list-name;\n"
751
  "        }\n"
752
  "\n"
753
  "        leaf comm-list-name-exact-match {\n"
754
  "          type boolean;\n"
755
  "          description\n"
756
  "            \"Do exact matching of communities\";\n"
757
  "        }\n"
758
  "      }\n"
759
  "    }\n"
760
  "\n"
761
  "    case ipv4-address {\n"
762
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:ipv4-nexthop\')\";\n"
763
  "      leaf ipv4-address {\n"
764
  "        type inet:ipv4-address;\n"
765
  "        description\n"
766
  "          \"IPv4 address\";\n"
767
  "      }\n"
768
  "    }\n"
769
  "\n"
770
  "    case ipv6-address {\n"
771
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:match-condition/frr-route-map:condition, \'frr-bgp-route-map:ipv6-nexthop\')\";\n"
772
  "      leaf ipv6-address {\n"
773
  "        type inet:ipv6-address;\n"
774
  "        description\n"
775
  "          \"IPv6 address\";\n"
776
  "      }\n"
777
  "    }\n"
778
  "\n"
779
  "    case source-protocol {\n"
780
  "      when \"derived-from-or-self(../frr-route-map:condition, \'frr-bgp-route-map:source-protocol\')\";\n"
781
  "      leaf source-protocol {\n"
782
  "        type frr-route-types:frr-route-types;\n"
783
  "      }\n"
784
  "    }\n"
785
  "  }\n"
786
  "\n"
787
  "  augment \"/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:rmap-set-action/frr-route-map:set-action\" {\n"
788
  "    case distance {\n"
789
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:distance\')\";\n"
790
  "      leaf distance {\n"
791
  "        type uint8 {\n"
792
  "          range \"1..255\";\n"
793
  "        }\n"
794
  "      }\n"
795
  "    }\n"
796
  "\n"
797
  "    case extcommunity-none {\n"
798
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-extcommunity-none\')\";\n"
799
  "      description\n"
800
  "        \"Value of the BGP extended community attribute\";\n"
801
  "      leaf extcommunity-none {\n"
802
  "        type boolean;\n"
803
  "        description \"No extended community attribute\";\n"
804
  "      }\n"
805
  "    }\n"
806
  "\n"
807
  "    case extcommunity-rt {\n"
808
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-extcommunity-rt\')\";\n"
809
  "      description\n"
810
  "        \"Value of the ext-community\";\n"
811
  "      leaf extcommunity-rt {\n"
812
  "        type string;\n"
813
  "        description\n"
814
  "          \"Set BGP ext-community route-target attribute\";\n"
815
  "      }\n"
816
  "    }\n"
817
  "\n"
818
  "    case extcommunity-nt {\n"
819
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-extcommunity-nt\')\";\n"
820
  "      description\n"
821
  "        \"Value of the ext-community\";\n"
822
  "      leaf extcommunity-nt {\n"
823
  "        type string;\n"
824
  "        description\n"
825
  "          \"Set BGP ext-community node-target attribute\";\n"
826
  "      }\n"
827
  "    }\n"
828
  "\n"
829
  "    case extcommunity-soo {\n"
830
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-extcommunity-soo\')\";\n"
831
  "      description\n"
832
  "        \"Value of the ext-community\";\n"
833
  "      leaf extcommunity-soo {\n"
834
  "        type string;\n"
835
  "        description\n"
836
  "          \"Set BGP ext-community site-of-origin attribute\";\n"
837
  "      }\n"
838
  "    }\n"
839
  "\n"
840
  "    case extcommunity-lb {\n"
841
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-extcommunity-lb\')\";\n"
842
  "      container extcommunity-lb {\n"
843
  "        description\n"
844
  "          \"Value of the ext-community.\";\n"
845
  "        leaf lb-type {\n"
846
  "          type frr-bgp-route-map:extcommunity-lb-type;\n"
847
  "        }\n"
848
  "\n"
849
  "        leaf bandwidth {\n"
850
  "          when \"../lb-type = \'explicit-bandwidth\'\";\n"
851
  "          type uint16 {\n"
852
  "            range \"1..25600\";\n"
853
  "          }\n"
854
  "          description\n"
855
  "            \"Bandwidth value in Mbps\";\n"
856
  "        }\n"
857
  "        uses extcommunity-non-transitive-types;\n"
858
  "      }\n"
859
  "    }\n"
860
  "\n"
861
  "    case ipv4-address {\n"
862
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:ipv4-vpn-address\')\";\n"
863
  "      description\n"
864
  "        \"Set the IPv4 address\";\n"
865
  "      leaf ipv4-address {\n"
866
  "        type inet:ipv4-address;\n"
867
  "      }\n"
868
  "    }\n"
869
  "\n"
870
  "    case ipv4-nexthop {\n"
871
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-ipv4-nexthop\')\";\n"
872
  "      leaf ipv4-nexthop {\n"
873
  "        type string;\n"
874
  "      }\n"
875
  "    }\n"
876
  "\n"
877
  "    case ipv6-address {\n"
878
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:ipv6-nexthop-global\') or \"\n"
879
  "        + \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:ipv6-vpn-address\')\";\n"
880
  "      description\n"
881
  "        \"Set the IPv6 address\";\n"
882
  "      leaf ipv6-address {\n"
883
  "        type inet:ipv6-address;\n"
884
  "      }\n"
885
  "    }\n"
886
  "\n"
887
  "    case preference {\n"
888
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:ipv6-prefer-global\') or \"\n"
889
  "        + \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:ipv6-peer-address\')\";\n"
890
  "      leaf preference {\n"
891
  "        type boolean;\n"
892
  "      }\n"
893
  "    }\n"
894
  "\n"
895
  "    case label-index {\n"
896
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:label-index\')\";\n"
897
  "      leaf label-index {\n"
898
  "        type uint32 {\n"
899
  "          range \"0..1048560\";\n"
900
  "        }\n"
901
  "      }\n"
902
  "    }\n"
903
  "\n"
904
  "    case local-pref {\n"
905
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-local-preference\')\";\n"
906
  "      leaf local-pref {\n"
907
  "        type string;\n"
908
  "      }\n"
909
  "    }\n"
910
  "\n"
911
  "    case weight {\n"
912
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:weight\')\";\n"
913
  "      leaf weight {\n"
914
  "        type uint32 {\n"
915
  "          range \"0..4294967295\";\n"
916
  "        }\n"
917
  "      }\n"
918
  "    }\n"
919
  "\n"
920
  "    case origin {\n"
921
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-origin\')\";\n"
922
  "      leaf origin {\n"
923
  "        type enumeration {\n"
924
  "          enum \"egp\" {\n"
925
  "            value 0;\n"
926
  "            description\n"
927
  "              \"Remote EGP\";\n"
928
  "          }\n"
929
  "          enum \"igp\" {\n"
930
  "            value 1;\n"
931
  "            description\n"
932
  "              \"Local IGP\";\n"
933
  "          }\n"
934
  "          enum \"incomplete\" {\n"
935
  "            value 2;\n"
936
  "            description\n"
937
  "              \"Unknown heritage\";\n"
938
  "          }\n"
939
  "        }\n"
940
  "      }\n"
941
  "    }\n"
942
  "\n"
943
  "    case originator-id {\n"
944
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:originator-id\')\";\n"
945
  "      leaf originator-id {\n"
946
  "        type inet:ipv4-address;\n"
947
  "      }\n"
948
  "    }\n"
949
  "\n"
950
  "    case table {\n"
951
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:table\')\";\n"
952
  "      leaf table {\n"
953
  "        type uint32 {\n"
954
  "          range \"1..4294967295\";\n"
955
  "        }\n"
956
  "      }\n"
957
  "    }\n"
958
  "\n"
959
  "    case atomic-aggregate {\n"
960
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:atomic-aggregate\')\";\n"
961
  "      leaf atomic-aggregate {\n"
962
  "        type empty;\n"
963
  "      }\n"
964
  "    }\n"
965
  "\n"
966
  "    case aigp-metric {\n"
967
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:aigp-metric\')\";\n"
968
  "      leaf aigp-metric {\n"
969
  "        type string;\n"
970
  "        description\n"
971
  "          \"Set BGP AIGP attribute (AIGP Metric TLV)\";\n"
972
  "      }\n"
973
  "    }\n"
974
  "\n"
975
  "    case as-path-prepend {\n"
976
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:as-path-prepend\')\";\n"
977
  "      choice as-path-prepend {\n"
978
  "        description\n"
979
  "          \"Value of the BGP AS-path attribute\";\n"
980
  "        case prepend-as {\n"
981
  "          description\n"
982
  "            \"Prepend the mentioned AS-path\";\n"
983
  "          leaf prepend-as-path {\n"
984
  "            type string;\n"
985
  "          }\n"
986
  "        }\n"
987
  "\n"
988
  "        case last-as {\n"
989
  "          description\n"
990
  "            \"Prepend the last ASN in the AS-path\";\n"
991
  "          leaf last-as {\n"
992
  "            type uint8 {\n"
993
  "              range \"1..10\";\n"
994
  "            }\n"
995
  "          }\n"
996
  "        }\n"
997
  "      }\n"
998
  "    }\n"
999
  "\n"
1000
  "    case as-path-exclude {\n"
1001
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:as-path-exclude\')\";\n"
1002
  "      leaf exclude-as-path {\n"
1003
  "        type string;\n"
1004
  "        description\n"
1005
  "          \"Exclude the mentioned AS-path\";\n"
1006
  "      }\n"
1007
  "    }\n"
1008
  "\n"
1009
  "    case as-path-replace {\n"
1010
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:as-path-replace\')\";\n"
1011
  "      leaf replace-as-path {\n"
1012
  "        type string;\n"
1013
  "        description\n"
1014
  "          \"Replace ASNs to local AS number\";\n"
1015
  "      }\n"
1016
  "    }\n"
1017
  "\n"
1018
  "    case community {\n"
1019
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-community\')\";\n"
1020
  "      choice community {\n"
1021
  "        description\n"
1022
  "          \"Value of the BGP community attribute\";\n"
1023
  "        case none {\n"
1024
  "          description\n"
1025
  "            \"No community attribute\";\n"
1026
  "          leaf community-none {\n"
1027
  "            type boolean;\n"
1028
  "          }\n"
1029
  "        }\n"
1030
  "\n"
1031
  "        case community-string {\n"
1032
  "          description\n"
1033
  "            \"Community string\";\n"
1034
  "          leaf community-string {\n"
1035
  "            type string;\n"
1036
  "          }\n"
1037
  "        }\n"
1038
  "      }\n"
1039
  "    }\n"
1040
  "\n"
1041
  "    case large-community {\n"
1042
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:set-large-community\')\";\n"
1043
  "      choice large-community {\n"
1044
  "        description\n"
1045
  "          \"Value of the BGP large-community attribute\";\n"
1046
  "        case none {\n"
1047
  "          description\n"
1048
  "            \"No large-community attribute\";\n"
1049
  "          leaf large-community-none {\n"
1050
  "            type boolean;\n"
1051
  "          }\n"
1052
  "        }\n"
1053
  "\n"
1054
  "        case large-community-string {\n"
1055
  "          description\n"
1056
  "            \"Large-Community string\";\n"
1057
  "          leaf large-community-string {\n"
1058
  "            type string;\n"
1059
  "          }\n"
1060
  "        }\n"
1061
  "      }\n"
1062
  "    }\n"
1063
  "\n"
1064
  "    case aggregator {\n"
1065
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:aggregator\')\";\n"
1066
  "      container aggregator {\n"
1067
  "        leaf aggregator-asn {\n"
1068
  "          type asn-type;\n"
1069
  "          description\n"
1070
  "            \"ASN of the aggregator\";\n"
1071
  "        }\n"
1072
  "\n"
1073
  "        leaf aggregator-address {\n"
1074
  "          type inet:ipv4-address;\n"
1075
  "          description\n"
1076
  "            \"IPv4 address of the aggregator\";\n"
1077
  "        }\n"
1078
  "      }\n"
1079
  "    }\n"
1080
  "\n"
1081
  "    case comm-list-name {\n"
1082
  "      when \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:comm-list-delete\') or \"\n"
1083
  "        + \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action, \'frr-bgp-route-map:large-comm-list-delete\')\";\n"
1084
  "      leaf comm-list-name {\n"
1085
  "        type bgp-filter:bgp-list-name;\n"
1086
  "      }\n"
1087
  "    }\n"
1088
  "    case evpn-gateway-ip-ipv4 {\n"
1089
  "      when\n"
1090
  "      \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action,\n"
1091
  "      \'frr-bgp-route-map:set-evpn-gateway-ip-ipv4\')\";\n"
1092
  "      description\n"
1093
  "        \"Set EVPN gateway IP overlay index IPv4\";\n"
1094
  "      leaf evpn-gateway-ip-ipv4 {\n"
1095
  "        type inet:ipv4-address;\n"
1096
  "      }\n"
1097
  "    }\n"
1098
  "    case evpn-gateway-ip-ipv6 {\n"
1099
  "      when\n"
1100
  "      \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action,\n"
1101
  "      \'frr-bgp-route-map:set-evpn-gateway-ip-ipv6\')\";\n"
1102
  "      description\n"
1103
  "        \"Set EVPN gateway IP overlay index IPv6\";\n"
1104
  "      leaf evpn-gateway-ip-ipv6 {\n"
1105
  "        type inet:ipv6-address;\n"
1106
  "      }\n"
1107
  "    }\n"
1108
  "    case l3vpn-nexthop-encapsulation {\n"
1109
  "      when\n"
1110
  "      \"derived-from-or-self(/frr-route-map:lib/frr-route-map:route-map/frr-route-map:entry/frr-route-map:set-action/frr-route-map:action,\n"
1111
  "      \'frr-bgp-route-map:set-l3vpn-nexthop-encapsulation\')\";\n"
1112
  "      description\n"
1113
  "        \"Accept L3VPN traffic over other than LSP encapsulation\";\n"
1114
  "      leaf l3vpn-nexthop-encapsulation {\n"
1115
  "        type enumeration {\n"
1116
  "          enum \"gre\" {\n"
1117
  "            value 0;\n"
1118
  "            description\n"
1119
  "              \"GRE protocol\";\n"
1120
  "          }\n"
1121
  "        }\n"
1122
  "      }\n"
1123
  "    }\n"
1124
  "  }\n"
1125
  "}\n"
1126
  "";
1127
1128
static struct yang_module_embed embed = {
1129
  .mod_name = "frr-bgp-route-map",
1130
  .mod_rev = "2020-01-02",
1131
  .sub_mod_name = "",
1132
  .sub_mod_rev = "",
1133
  .data = model,
1134
  .format = LYS_IN_YANG,
1135
};
1136
1137
static void embed_register(void) __attribute__((_CONSTRUCTOR(2000)));
1138
static void embed_register(void)
1139
2
{
1140
2
  yang_module_embed(&embed);
1141
2
}