diff options
| author | Christian Breunig <christian@breunig.cc> | 2023-11-12 18:30:15 +0100 | 
|---|---|---|
| committer | Christian Breunig <christian@breunig.cc> | 2023-11-13 22:19:32 +0100 | 
| commit | 9abc02edcc237760f1f8aa1b3f08d7f4d18f866c (patch) | |
| tree | 5a4936911c72e036f27339c457c1eff2d02d8dcf /interface-definitions | |
| parent | 2e587c8329a1d32fc1ec601c7753211d0fedbf2c (diff) | |
| download | vyos-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.in | 188 | 
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> | 
