diff options
| author | Thomas Mangin <thomas.mangin@exa.net.uk> | 2020-06-24 11:26:48 +0100 | 
|---|---|---|
| committer | Thomas Mangin <thomas.mangin@exa.net.uk> | 2020-06-24 11:26:48 +0100 | 
| commit | e507d0867326782bf93ed703ca877ca31dead2d6 (patch) | |
| tree | 4d42fed3915745b09dd282e0db3fbaee842a628b /python | |
| parent | 3caf131cae11d9ed0f81d632afea5ea3e6f8b8d3 (diff) | |
| download | vyos-1x-e507d0867326782bf93ed703ca877ca31dead2d6.tar.gz vyos-1x-e507d0867326782bf93ed703ca877ca31dead2d6.zip | |
dictconfig: T2637: identify sub-interfaces (vif) to delete
Diffstat (limited to 'python')
| -rw-r--r-- | python/vyos/configdict.py | 8 | 
1 files changed, 8 insertions, 0 deletions
| diff --git a/python/vyos/configdict.py b/python/vyos/configdict.py index 973fbdd8b..ce086872e 100644 --- a/python/vyos/configdict.py +++ b/python/vyos/configdict.py @@ -224,6 +224,14 @@ def intf_to_dict(conf, default):      intf = deepcopy(default)      intf['intf'] = ifname_from_config(conf) +    current_vif_list = conf.list_nodes(['vif']) +    previous_vif_list = conf.list_effective_nodes(['vif']) + +    # set the vif to be deleted +    for vif in previous_vif_list: +        if vif not in current_vif_list: +            intf['vif_remove'].append(vif) +      # retrieve interface description      if conf.exists(['description']):          intf['description'] = conf.return_value(['description']) | 
