summaryrefslogtreecommitdiff
path: root/interface-definitions
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2023-11-12 18:30:15 +0100
committerChristian Breunig <christian@breunig.cc>2023-11-13 22:19:32 +0100
commit9abc02edcc237760f1f8aa1b3f08d7f4d18f866c (patch)
tree5a4936911c72e036f27339c457c1eff2d02d8dcf /interface-definitions
parent2e587c8329a1d32fc1ec601c7753211d0fedbf2c (diff)
downloadvyos-1x-9abc02edcc237760f1f8aa1b3f08d7f4d18f866c.tar.gz
vyos-1x-9abc02edcc237760f1f8aa1b3f08d7f4d18f866c.zip
pim: T5733: add missing FRR PIM related features
Migrate CLI configuration retrival to common get_config_dict(). In addition add new functionality to VyOS that is PIM related and already available in FRR.
Diffstat (limited to 'interface-definitions')
-rw-r--r--interface-definitions/protocols-pim.xml.in188
1 files changed, 181 insertions, 7 deletions
diff --git a/interface-definitions/protocols-pim.xml.in b/interface-definitions/protocols-pim.xml.in
index e9475930c..733279aa4 100644
--- a/interface-definitions/protocols-pim.xml.in
+++ b/interface-definitions/protocols-pim.xml.in
@@ -15,8 +15,24 @@
<completionHelp>
<script>${vyos_completion_dir}/list_interfaces</script>
</completionHelp>
+ <constraint>
+ #include <include/constraint/interface-name.xml.i>
+ </constraint>
</properties>
<children>
+ #include <include/bfd/bfd.xml.i>
+ <leafNode name="no-bsm">
+ <properties>
+ <help>Do not process bootstrap messages</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ <leafNode name="no-unicast-bsm">
+ <properties>
+ <help>Do not process unicast bootstrap messages</help>
+ <valueless/>
+ </properties>
+ </leafNode>
<leafNode name="dr-priority">
<properties>
<help>Designated Router Election Priority</help>
@@ -41,8 +57,134 @@
</constraint>
</properties>
</leafNode>
+ <node name="igmp">
+ <properties>
+ <help>Internet Group Management Protocol (IGMP) options</help>
+ </properties>
+ <children>
+ <leafNode name="version">
+ <properties>
+ <help>Interface IGMP version</help>
+ <valueHelp>
+ <format>2</format>
+ <description>IGMP version 2</description>
+ </valueHelp>
+ <valueHelp>
+ <format>3</format>
+ <description>IGMP version 3</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 2-3"/>
+ </constraint>
+ </properties>
+ <defaultValue>3</defaultValue>
+ </leafNode>
+ </children>
+ </node>
+ <leafNode name="passive">
+ <properties>
+ <help>Disable sending and receiving PIM control packets on the interface</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ #include <include/source-address-ipv4.xml.i>
</children>
</tagNode>
+ <node name="ecmp">
+ <properties>
+ <help>Enable PIM ECMP</help>
+ </properties>
+ <children>
+ <leafNode name="rebalance">
+ <properties>
+ <help>Enable PIM ECMP Rebalance</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ </children>
+ </node>
+ <node name="igmp">
+ <properties>
+ <help>Internet Group Management Protocol (IGMP) options</help>
+ </properties>
+ <children>
+ <leafNode name="watermark-warn">
+ <properties>
+ <help>Configure group limit for watermark warning</help>
+ <valueHelp>
+ <format>u32:1-65535</format>
+ <description>Group count to generate watermark warning</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-65535"/>
+ </constraint>
+ </properties>
+ </leafNode>
+ </children>
+ </node>
+ <leafNode name="join-prune-interval">
+ <properties>
+ <help>Join Prune Send Interval</help>
+ <valueHelp>
+ <format>u32:1-65535</format>
+ <description>Interval in seconds</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-65535"/>
+ </constraint>
+ </properties>
+ <defaultValue>60</defaultValue>
+ </leafNode>
+ <leafNode name="keep-alive-timer">
+ <properties>
+ <help>Keep alive Timer</help>
+ <valueHelp>
+ <format>u32:1-65535</format>
+ <description>Keep alive Timer in seconds</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-65535"/>
+ </constraint>
+ </properties>
+ <defaultValue>210</defaultValue>
+ </leafNode>
+ <leafNode name="packets">
+ <properties>
+ <help>Packets to process at once</help>
+ <valueHelp>
+ <format>u32:1-255</format>
+ <description>Number of packets</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-255"/>
+ </constraint>
+ </properties>
+ <defaultValue>3</defaultValue>
+ </leafNode>
+ <leafNode name="register-accept-list">
+ <properties>
+ <help>Only accept registers from a specific source prefix list</help>
+ <valueHelp>
+ <format>txt</format>
+ <description>Prefix-list to apply</description>
+ </valueHelp>
+ <completionHelp>
+ <path>policy prefix-list</path>
+ </completionHelp>
+ </properties>
+ </leafNode>
+ <leafNode name="register-suppress-time">
+ <properties>
+ <help>Register Suppress Timer</help>
+ <valueHelp>
+ <format>u32:1-65535</format>
+ <description>In seconds</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 1-65535"/>
+ </constraint>
+ </properties>
+ </leafNode>
<node name="rp">
<properties>
<help>Rendezvous Point</help>
@@ -75,16 +217,48 @@
</leafNode>
</children>
</tagNode>
- <leafNode name="keep-alive-timer">
+ <leafNode name="send-v6-secondary">
<properties>
- <help>Keep alive Timer</help>
+ <help>Send v6 secondary addresses</help>
+ <valueless/>
+ </properties>
+ </leafNode>
+ <node name="spt-switchover">
+ <properties>
+ <help>Send v6 secondary addresses</help>
+ </properties>
+ <children>
+ <node name="infinity-and-beyond">
+ <properties>
+ <help>Never switch to SPT Tree</help>
+ </properties>
+ <children>
+ <leafNode name="prefix-list">
+ <properties>
+ <help>Prefix-List to control which groups to switch</help>
+ <valueHelp>
+ <format>txt</format>
+ <description>Prefix-list to apply</description>
+ </valueHelp>
+ <completionHelp>
+ <path>policy prefix-list</path>
+ </completionHelp>
+ </properties>
+ </leafNode>
+ </children>
+ </node>
+ </children>
+ </node>
+ <leafNode name="ssm">
+ <properties>
+ <help>Source-Specific Multicast</help>
+ <completionHelp>
+ <path>policy prefix-list</path>
+ </completionHelp>
<valueHelp>
- <format>u32:31-60000</format>
- <description>Keep alive Timer in seconds</description>
+ <format>txt</format>
+ <description>Prefix-list to apply</description>
</valueHelp>
- <constraint>
- <validator name="numeric" argument="--range 31-60000"/>
- </constraint>
</properties>
</leafNode>
</children>