]> git.proxmox.com Git - mirror_frr.git/blame - yang/frr-pim-rp.yang
bgpd: Refactor subgroup_announce_table() to reuse an existing helpers
[mirror_frr.git] / yang / frr-pim-rp.yang
CommitLineData
41db488c 1// SPDX-License-Identifier: BSD-2-Clause
da787004
SP
2module 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}