summaryrefslogtreecommitdiff
path: root/src/conf_mode/protocols_rip.py
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2022-05-28 22:59:17 +0200
committerChristian Poessinger <christian@poessinger.com>2022-05-28 22:59:17 +0200
commitf9e38622adc6edb66c84c397ef4d0ae9e49e008e (patch)
treeada22e119bedfe9badd22bf583a6958dfbb50be5 /src/conf_mode/protocols_rip.py
parent8099770c1004d4dd756145050157f51f474ede95 (diff)
downloadvyos-1x-f9e38622adc6edb66c84c397ef4d0ae9e49e008e.tar.gz
vyos-1x-f9e38622adc6edb66c84c397ef4d0ae9e49e008e.zip
rip: T4448: add support to set protocol version on an interface level
Diffstat (limited to 'src/conf_mode/protocols_rip.py')
-rwxr-xr-xsrc/conf_mode/protocols_rip.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/conf_mode/protocols_rip.py b/src/conf_mode/protocols_rip.py
index c78d90396..e29b23765 100755
--- a/src/conf_mode/protocols_rip.py
+++ b/src/conf_mode/protocols_rip.py
@@ -56,9 +56,24 @@ 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().
#