diff options
author | Christian Poessinger <christian@poessinger.com> | 2022-05-29 10:35:37 +0200 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2022-05-29 10:35:37 +0200 |
commit | 687462972361af3d91047721f1d7bd02da7f9dd5 (patch) | |
tree | 602e813967208822acef8b3be087a60acab4c7fc | |
parent | 939794f297728aacfbc9422b66941614f7f3cf45 (diff) | |
download | vyos-1x-687462972361af3d91047721f1d7bd02da7f9dd5.tar.gz vyos-1x-687462972361af3d91047721f1d7bd02da7f9dd5.zip |
rip: T4448: remove default version for RIP
Commit f9e38622 ("rip: T4448: add support to set protocol version on an
interface level") also added the versionspecified on a per interface level.
the RIp version carried a default value of 2 which makes RIPv1 and RIPv2 no
longer working which is dthe default for FRR. Remove the default "2" from the
RIP version specifier to make this behavior work again.
-rw-r--r-- | interface-definitions/include/rip/version.xml.i | 7 | ||||
-rwxr-xr-x | smoketest/scripts/cli/test_protocols_rip.py | 16 | ||||
-rwxr-xr-x | src/conf_mode/protocols_rip.py | 15 |
3 files changed, 11 insertions, 27 deletions
diff --git a/interface-definitions/include/rip/version.xml.i b/interface-definitions/include/rip/version.xml.i index f7d3eab0d..a35350aee 100644 --- a/interface-definitions/include/rip/version.xml.i +++ b/interface-definitions/include/rip/version.xml.i @@ -1,19 +1,18 @@ <!-- include start from rip/version.xml.i -->
<leafNode name="version">
<properties>
- <help>RIP protocol version</help>
+ <help>Limit RIP protocol version</help>
<valueHelp>
<format>1</format>
- <description>RIPv1</description>
+ <description>Allow RIPv1 only</description>
</valueHelp>
<valueHelp>
<format>2</format>
- <description>RIPv2</description>
+ <description>Allow RIPv2 only</description>
</valueHelp>
<constraint>
<validator name="numeric" argument="--range 1-2"/>
</constraint>
</properties>
- <defaultValue>2</defaultValue>
</leafNode>
<!-- include end -->
diff --git a/smoketest/scripts/cli/test_protocols_rip.py b/smoketest/scripts/cli/test_protocols_rip.py index 8c100d537..11385adb5 100755 --- a/smoketest/scripts/cli/test_protocols_rip.py +++ b/smoketest/scripts/cli/test_protocols_rip.py @@ -159,24 +159,24 @@ class TestProtocolsRIP(VyOSUnitTestSHIM.TestCase): self.assertNotIn(zebra_route_map, frrconfig) def test_rip_03_version(self): - version = '1' + rx_version = '1' + tx_version = '2' interface = 'eth0' - self.cli_set(base_path + ['version', version]) - self.cli_set(base_path + ['interface', interface, 'send', 'version', version]) - self.cli_set(base_path + ['interface', interface, 'receive', 'version', version]) + self.cli_set(base_path + ['version', tx_version]) + self.cli_set(base_path + ['interface', interface, 'send', 'version', tx_version]) + self.cli_set(base_path + ['interface', interface, 'receive', 'version', rx_version]) # commit changes self.cli_commit() # Verify FRR configuration frrconfig = self.getFRRconfig('router rip') - self.assertIn(f'version {version}', frrconfig) + self.assertIn(f'version {tx_version}', frrconfig) frrconfig = self.getFRRconfig(f'interface {interface}') - self.assertIn(f' ip rip receive version {version}', frrconfig) - self.assertIn(f' ip rip send version {version}', frrconfig) - + self.assertIn(f' ip rip receive version {rx_version}', frrconfig) + self.assertIn(f' ip rip send version {tx_version}', frrconfig) if __name__ == '__main__': unittest.main(verbosity=2) diff --git a/src/conf_mode/protocols_rip.py b/src/conf_mode/protocols_rip.py index e29b23765..c78d90396 100755 --- a/src/conf_mode/protocols_rip.py +++ b/src/conf_mode/protocols_rip.py @@ -56,24 +56,9 @@ def get_config(config=None): # We have gathered the dict representation of the CLI, but there are default # options which we need to update into the dictionary retrived. default_values = defaults(base) - - # T2665: we can not blend in default values of tagNodes - delete and add - # individual values later on ... - if 'interface' in default_values: - del default_values['interface'] # merge in remaining default values rip = dict_merge(default_values, rip) - # T2665: add individual per interface defaults - - # T2665: blend in per interface defaults - if 'interface' in rip: - default_values = defaults(base + ['interface']) - for interface in rip['interface']: - # merge in default values - rip['interface'][interface] = dict_merge(default_values, - rip['interface'][interface]) - # We also need some additional information from the config, prefix-lists # and route-maps for instance. They will be used in verify(). # |