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