diff options
author | Christian Poessinger <christian@poessinger.com> | 2019-12-12 19:51:36 +0100 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2019-12-12 19:51:36 +0100 |
commit | e23bd0aa33d44cb65fe7951404b385546fab92a5 (patch) | |
tree | e4b5f571f924e0c9f8f6e077e3e6e887ad99d8eb /python | |
parent | a676c91105e3df96bc0e709b397f2ac6ceb2070f (diff) | |
download | vyos-1x-e23bd0aa33d44cb65fe7951404b385546fab92a5.tar.gz vyos-1x-e23bd0aa33d44cb65fe7951404b385546fab92a5.zip |
ethernet: T1637: do not delete VIFs on every commit
A delta-check problem caused the deletion of each and every VLAN interface
when anything under an interface has been changed. This also cause PPPoE
session interruptions.
Diffstat (limited to 'python')
-rw-r--r-- | python/vyos/configdict.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/python/vyos/configdict.py b/python/vyos/configdict.py index e8e52b33d..7f5ae3db9 100644 --- a/python/vyos/configdict.py +++ b/python/vyos/configdict.py @@ -179,16 +179,18 @@ def vlan_to_dict(conf): vlan['egress_qos'] = conf.return_value('egress-qos') # egress changes QoS require VLAN interface recreation - if vlan['egress_qos'] != conf.return_effective_value('egress-qos'): - vlan['egress_qos_changed'] = True + if conf.return_effective_value('egress-qos'): + if vlan['egress_qos'] != conf.return_effective_value('egress-qos'): + vlan['egress_qos_changed'] = True # VLAN ingress QoS if conf.exists('ingress-qos'): vlan['ingress_qos'] = conf.return_value('ingress-qos') # ingress changes QoS require VLAN interface recreation - if vlan['ingress_qos'] != conf.return_effective_value('ingress-qos'): - vlan['ingress_qos_changed'] = True + if conf.return_effective_value('ingress-qos'): + if vlan['ingress_qos'] != conf.return_effective_value('ingress-qos'): + vlan['ingress_qos_changed'] = True # ethertype is mandatory on vif-s nodes and only exists here! # check if this is a vif-s node at all: |