summaryrefslogtreecommitdiff
path: root/python
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 /python
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)
Diffstat (limited to 'python')
-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