Coverage Report

Created: 2025-10-08 06:07

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/frr/yang/frr-bgp-bmp.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
  "// SPDX-License-Identifier: BSD-2-Clause\n"
8
  "submodule frr-bgp-bmp {\n"
9
  "  yang-version 1.1;\n"
10
  "\n"
11
  "  belongs-to frr-bgp {\n"
12
  "    prefix \"bgp\";\n"
13
  "  }\n"
14
  "\n"
15
  "  import ietf-inet-types {\n"
16
  "    prefix inet;\n"
17
  "  }\n"
18
  "\n"
19
  "  import frr-bgp-types {\n"
20
  "    prefix frr-bt;\n"
21
  "  }\n"
22
  "\n"
23
  "  include \"frr-bgp-common-multiprotocol\";\n"
24
  "\n"
25
  "  organization\n"
26
  "    \"FRRouting\";\n"
27
  "  contact\n"
28
  "    \"FRR Users List: <mailto:frog@lists.frrouting.org> FRR Development\n"
29
  "     List: <mailto:dev@lists.frrouting.org>\";\n"
30
  "  description\n"
31
  "    \"This submodule defines a model for managing FRR BGP BMP.\n"
32
  "\n"
33
  "     Copyright 2020 FRRouting\n"
34
  "\n"
35
  "     Redistribution and use in source and binary forms, with or without\n"
36
  "     modification, are permitted provided that the following conditions\n"
37
  "     are met:\n"
38
  "\n"
39
  "     1. Redistributions of source code must retain the above copyright notice,\n"
40
  "     this list of conditions and the following disclaimer.\n"
41
  "\n"
42
  "     2. Redistributions in binary form must reproduce the above copyright\n"
43
  "     notice, this list of conditions and the following disclaimer in the\n"
44
  "     documentation and/or other materials provided with the distribution.\n"
45
  "\n"
46
  "     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n"
47
  "     \\\"AS IS\\\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n"
48
  "     LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n"
49
  "     A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n"
50
  "     HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n"
51
  "     SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n"
52
  "     LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n"
53
  "     DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n"
54
  "     THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n"
55
  "     (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n"
56
  "     OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\";\n"
57
  "\n"
58
  "  revision 2019-12-03 {\n"
59
  "    description\n"
60
  "      \"Initial revision.\";\n"
61
  "  }\n"
62
  "\n"
63
  "  grouping bmp-incoming-session {\n"
64
  "    container incoming-session {\n"
65
  "      list session-list {\n"
66
  "        key \"address tcp-port\";\n"
67
  "        leaf address {\n"
68
  "          type inet:ip-address;\n"
69
  "          description\n"
70
  "            \"IPv4 address to listen on.\";\n"
71
  "        }\n"
72
  "\n"
73
  "        leaf tcp-port {\n"
74
  "          type uint32;\n"
75
  "        }\n"
76
  "      }\n"
77
  "    }\n"
78
  "  }\n"
79
  "\n"
80
  "  grouping bmp-outgoing-session {\n"
81
  "    container outgoing-session {\n"
82
  "      list session-list {\n"
83
  "        key \"hostname tcp-port\";\n"
84
  "        leaf hostname {\n"
85
  "          type string;\n"
86
  "        }\n"
87
  "\n"
88
  "        leaf tcp-port {\n"
89
  "          type uint32;\n"
90
  "        }\n"
91
  "\n"
92
  "        leaf min-retry-time {\n"
93
  "          type uint32 {\n"
94
  "            range \"100..86400000\";\n"
95
  "          }\n"
96
  "          units \"milliseconds\";\n"
97
  "          default \"30000\";\n"
98
  "          description\n"
99
  "            \"Minimum connection retry interval.\";\n"
100
  "        }\n"
101
  "\n"
102
  "        leaf max-retry-time {\n"
103
  "          type uint32 {\n"
104
  "            range \"100..86400000\";\n"
105
  "          }\n"
106
  "          units \"milliseconds\";\n"
107
  "          default \"720000\";\n"
108
  "          description\n"
109
  "            \"Maximum connection retry interval.\";\n"
110
  "        }\n"
111
  "      }\n"
112
  "    }\n"
113
  "  }\n"
114
  "\n"
115
  "  grouping bmp-afi-safis {\n"
116
  "    container afi-safis {\n"
117
  "      description\n"
118
  "        \"List of address-families associated with the BGP\n"
119
  "         instance.\";\n"
120
  "      list afi-safi {\n"
121
  "        key \"afi-safi-name\";\n"
122
  "        description\n"
123
  "          \"AFI, SAFI configuration available for the\n"
124
  "           neighbour or group.\";\n"
125
  "        uses mp-afi-safi-config;\n"
126
  "\n"
127
  "        uses mp-all-afi-safi-list-contents;\n"
128
  "      }\n"
129
  "    }\n"
130
  "  }\n"
131
  "\n"
132
  "  grouping bmp-afi-safi-common-config {\n"
133
  "    container common-config {\n"
134
  "      leaf pre-policy {\n"
135
  "        type boolean;\n"
136
  "        default \"false\";\n"
137
  "        description\n"
138
  "          \"Send state before policy and filter processing.\";\n"
139
  "      }\n"
140
  "\n"
141
  "      leaf post-policy {\n"
142
  "        type boolean;\n"
143
  "        default \"false\";\n"
144
  "        description\n"
145
  "          \"Send state after policy and filter processing.\";\n"
146
  "      }\n"
147
  "    }\n"
148
  "  }\n"
149
  "\n"
150
  "  grouping global-bmp-config {\n"
151
  "    description\n"
152
  "      \"Structural grouping used to include filter\n"
153
  "       configuration for BMP.\";\n"
154
  "    container bmp-config {\n"
155
  "      description\n"
156
  "        \"BMP related parameters.\";\n"
157
  "      list target-list {\n"
158
  "        key \"target-name\";\n"
159
  "        leaf target-name {\n"
160
  "          type string;\n"
161
  "          description\n"
162
  "            \"Targets group name.\";\n"
163
  "        }\n"
164
  "\n"
165
  "        uses bmp-incoming-session;\n"
166
  "\n"
167
  "        uses bmp-outgoing-session;\n"
168
  "\n"
169
  "        leaf mirror {\n"
170
  "          type boolean;\n"
171
  "          default \"false\";\n"
172
  "          description\n"
173
  "            \"When set to \'TRUE\' it send BMP route mirroring messages.\";\n"
174
  "        }\n"
175
  "\n"
176
  "        leaf stats-time {\n"
177
  "          type uint32 {\n"
178
  "            range \"100..86400000\";\n"
179
  "          }\n"
180
  "          units \"milliseconds\";\n"
181
  "          description\n"
182
  "            \"Interval to send BMP Stats.\";\n"
183
  "        }\n"
184
  "\n"
185
  "        leaf ipv4-access-list {\n"
186
  "          type frr-bt:access-list-ref;\n"
187
  "          description\n"
188
  "            \"Access list to restrict BMP sessions.\";\n"
189
  "        }\n"
190
  "\n"
191
  "        leaf ipv6-access-list {\n"
192
  "          type frr-bt:access-list-ref;\n"
193
  "          description\n"
194
  "            \"Access list to restrict BMP sessions.\";\n"
195
  "        }\n"
196
  "\n"
197
  "        uses bmp-afi-safis;\n"
198
  "      }\n"
199
  "\n"
200
  "      leaf mirror-buffer-limit {\n"
201
  "        type uint32 {\n"
202
  "          range \"0..4294967294\";\n"
203
  "        }\n"
204
  "        units \"bytes\";\n"
205
  "        description\n"
206
  "          \"Maximum memory used for buffered mirroring messages.\";\n"
207
  "      }\n"
208
  "    }\n"
209
  "  }\n"
210
  "}\n"
211
  "";
212
213
static struct yang_module_embed embed = {
214
  .mod_name = "frr-bgp",
215
  .mod_rev = "",
216
  .sub_mod_name = "frr-bgp-bmp",
217
  .sub_mod_rev = "2019-12-03",
218
  .data = model,
219
  .format = LYS_IN_YANG,
220
};
221
222
static void embed_register(void) __attribute__((_CONSTRUCTOR(2000)));
223
static void embed_register(void)
224
2
{
225
2
  yang_module_embed(&embed);
226
2
}