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 | |
| 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.
| -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:  | 
