/src/frr/yang/frr-pim-rp.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 | | "module frr-pim-rp {\n" |
9 | | " yang-version \"1.1\";\n" |
10 | | " namespace \"http://frrouting.org/yang/pim-rp\";\n" |
11 | | "\n" |
12 | | " prefix frr-pim-rp;\n" |
13 | | "\n" |
14 | | " import ietf-inet-types {\n" |
15 | | " prefix \"inet\";\n" |
16 | | " }\n" |
17 | | "\n" |
18 | | " import frr-routing {\n" |
19 | | " prefix \"frr-rt\";\n" |
20 | | " }\n" |
21 | | "\n" |
22 | | " import frr-pim {\n" |
23 | | " prefix \"frr-pim\";\n" |
24 | | " }\n" |
25 | | "\n" |
26 | | " import frr-route-types {\n" |
27 | | " prefix frr-route-types;\n" |
28 | | " }\n" |
29 | | "\n" |
30 | | " organization\n" |
31 | | " \"FRRouting\";\n" |
32 | | "\n" |
33 | | " contact\n" |
34 | | " \"FRR Users List: <mailto:frog@lists.frrouting.org>\n" |
35 | | " FRR Development List: <mailto:dev@lists.frrouting.org>\";\n" |
36 | | "\n" |
37 | | " description\n" |
38 | | " \"The module defines a collection of YANG definitions common for\n" |
39 | | " all PIM (Protocol Independent Multicast) RP (Rendezvous Point) model.\n" |
40 | | "\n" |
41 | | " Copyright 2020 FRRouting\n" |
42 | | "\n" |
43 | | " Redistribution and use in source and binary forms, with or without\n" |
44 | | " modification, are permitted provided that the following conditions\n" |
45 | | " are met:\n" |
46 | | "\n" |
47 | | " 1. Redistributions of source code must retain the above copyright notice,\n" |
48 | | " this list of conditions and the following disclaimer.\n" |
49 | | "\n" |
50 | | " 2. Redistributions in binary form must reproduce the above copyright\n" |
51 | | " notice, this list of conditions and the following disclaimer in the\n" |
52 | | " documentation and/or other materials provided with the distribution.\n" |
53 | | "\n" |
54 | | " THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n" |
55 | | " \\\"AS IS\\\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n" |
56 | | " LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n" |
57 | | " A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n" |
58 | | " HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n" |
59 | | " SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n" |
60 | | " LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n" |
61 | | " DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n" |
62 | | " THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n" |
63 | | " (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n" |
64 | | " OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\";\n" |
65 | | "\n" |
66 | | " revision 2017-03-09 {\n" |
67 | | " description\n" |
68 | | " \"Initial revision.\";\n" |
69 | | " reference\n" |
70 | | " \"RFC XXXX: A YANG Data Model for PIM RP\";\n" |
71 | | " }\n" |
72 | | "\n" |
73 | | " typedef plist-ref {\n" |
74 | | " type string;\n" |
75 | | " }\n" |
76 | | "\n" |
77 | | " /*\n" |
78 | | " * Groupings\n" |
79 | | " */\n" |
80 | | " grouping static-rp-container {\n" |
81 | | " description\n" |
82 | | " \"Grouping of static RP container.\";\n" |
83 | | "\n" |
84 | | " container static-rp {\n" |
85 | | " description\n" |
86 | | " \"Containing static RP attributes.\";\n" |
87 | | "\n" |
88 | | " list rp-list {\n" |
89 | | " key \"rp-address\";\n" |
90 | | " description\n" |
91 | | " \"A list of RP addresses.\";\n" |
92 | | "\n" |
93 | | " leaf rp-address {\n" |
94 | | " type inet:ip-address;\n" |
95 | | " description\n" |
96 | | " \"Specifies a static RP address.\";\n" |
97 | | " }\n" |
98 | | "\n" |
99 | | " choice group-list-or-prefix-list {\n" |
100 | | " description \"Use group-list or prefix-list\";\n" |
101 | | " case group-list {\n" |
102 | | " leaf-list group-list{\n" |
103 | | " type frr-route-types:ip-multicast-group-prefix;\n" |
104 | | " description\n" |
105 | | " \"List of multicast group address.\";\n" |
106 | | " }\n" |
107 | | " }\n" |
108 | | " case prefix-list {\n" |
109 | | " leaf prefix-list {\n" |
110 | | " type plist-ref;\n" |
111 | | " description\n" |
112 | | " \"Group prefix-list filter\";\n" |
113 | | " }\n" |
114 | | " }\n" |
115 | | " }\n" |
116 | | " }\n" |
117 | | " } // static-rp\n" |
118 | | " } // static-rp-container\n" |
119 | | "\n" |
120 | | " /*\n" |
121 | | " * Configuration data nodes\n" |
122 | | " */\n" |
123 | | " augment \"/frr-rt:routing/frr-rt:control-plane-protocols/\"\n" |
124 | | " + \"frr-rt:control-plane-protocol/frr-pim:pim/\"\n" |
125 | | " + \"frr-pim:address-family\" {\n" |
126 | | " description \"PIM RP augmentation.\";\n" |
127 | | "\n" |
128 | | " container rp {\n" |
129 | | " description\n" |
130 | | " \"PIM RP configuration data.\";\n" |
131 | | " uses static-rp-container;\n" |
132 | | " } // rp\n" |
133 | | " } // augment\n" |
134 | | "}\n" |
135 | | ""; |
136 | | |
137 | | static struct yang_module_embed embed = { |
138 | | .mod_name = "frr-pim-rp", |
139 | | .mod_rev = "2017-03-09", |
140 | | .sub_mod_name = "", |
141 | | .sub_mod_rev = "", |
142 | | .data = model, |
143 | | .format = LYS_IN_YANG, |
144 | | }; |
145 | | |
146 | | static void embed_register(void) __attribute__((_CONSTRUCTOR(2000))); |
147 | | static void embed_register(void) |
148 | 2 | { |
149 | 2 | yang_module_embed(&embed); |
150 | 2 | } |