diff options
author | Christian Breunig <christian@breunig.cc> | 2025-01-07 13:17:13 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-07 14:17:13 +0200 |
commit | 08c00548ec11329774d315f745dbbd007c986bfe (patch) | |
tree | 0f64fd098603f90a5b2a9071eaaa3574da3a4d0c /src/migration-scripts/sstp/4-to-5 | |
parent | fb651c09f07b8aba45f2d31cfb3851e9e9c82ef0 (diff) | |
download | vyos-1x-08c00548ec11329774d315f745dbbd007c986bfe.tar.gz vyos-1x-08c00548ec11329774d315f745dbbd007c986bfe.zip |
vyos.ifconfig: T7018: drop 'iftype' class attribute (#4280)
Under very rare cases we can run into a race condition where interfaces are
still in creation phase but are already referenced..
This can trigger:
File "/usr/libexec/vyos/conf_mode/system_conntrack.py", line 270, in <module>
apply(c)
File "/usr/libexec/vyos/conf_mode/system_conntrack.py", line 249, in apply
call_dependents()
File "/usr/lib/python3/dist-packages/vyos/configdep.py", line 147, in call_dependents
f()
File "/usr/lib/python3/dist-packages/vyos/configdep.py", line 118, in func_impl
run_config_mode_script(script, config)
File "/usr/lib/python3/dist-packages/vyos/configdep.py", line 106, in run_config_mode_script
mod.verify(c)
File "/usr/libexec/vyos//conf_mode/service_conntrack-sync.py", line 72, in verify
if len(get_ipv4(interface)) < 1:
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/vyos/template.py", line 458, in get_ipv4
return Interface(interface).get_addr_v4()
^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/vyos/ifconfig/interface.py", line 334, in __init__
if not self.iftype:
^^^^^^^^^^^
AttributeError: 'Interface' object has no attribute 'iftype'
This commit removes the code path in question and the class attribute check.
The reason for the iftype attribute in the past was a common _create() method
serving for all interface types. As we already have a lot of derived
implementations and not all honor the classes iftype/type member - or even
worse honor it only in 50% of the occurrences it's time to drop it.
Diffstat (limited to 'src/migration-scripts/sstp/4-to-5')
0 files changed, 0 insertions, 0 deletions