summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2022-07-30 19:52:52 +0200
committerChristian Poessinger <christian@poessinger.com>2022-07-31 19:43:09 +0200
commit8e54a26f11fee2578754d2fd99d4820c39d8c236 (patch)
treef40551bdb22944357fc9aa819e4ca667374d04bd
parent0bf98f8d75304b9554efd68e11ede9f72bed71d0 (diff)
downloadvyos-1x-8e54a26f11fee2578754d2fd99d4820c39d8c236.tar.gz
vyos-1x-8e54a26f11fee2578754d2fd99d4820c39d8c236.zip
bridge: T4565: is_member() must return the dict of the member interface
... otherwise functionality like bridge VLANs will loose configuration on membe rinterface update (e.g. description) (cherry picked from commit a295ec1fc4cb9cdbb0bd5efd7c8e72060ce036f5)
-rw-r--r--python/vyos/configdict.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/python/vyos/configdict.py b/python/vyos/configdict.py
index cc50c5167..466433c37 100644
--- a/python/vyos/configdict.py
+++ b/python/vyos/configdict.py
@@ -228,8 +228,10 @@ def is_member(conf, interface, intftype=None):
for intf in conf.list_nodes(base):
member = base + [intf, 'member', 'interface', interface]
if conf.exists(member):
- if conf.exists(['interfaces', Section.section(interface), interface]):
- ret_val.update({intf : {}})
+ tmp = conf.get_config_dict(member, key_mangling=('-', '_'),
+ get_first_key=True,
+ no_tag_node_value_mangle=True)
+ ret_val.update({intf : tmp})
old_level = conf.set_level(old_level)
return ret_val