summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorYuriy Andamasov <yuriy@vyos.io>2026-05-13 05:56:50 -0700
committerYuriy Andamasov <yuriy@vyos.io>2026-05-13 05:56:50 -0700
commitd004a2b5caa9b819d93af897b1c218a2f3197c8b (patch)
tree946ca55b473841615fa77e61847f9995acb0b350 /src
parentf1a412985288730cc65a250da2bd4f5b87ade43f (diff)
downloadvyos-1x-d004a2b5caa9b819d93af897b1c218a2f3197c8b.tar.gz
vyos-1x-d004a2b5caa9b819d93af897b1c218a2f3197c8b.zip
python: T8857: replace bare except clauses with except Exception in config scripts
Bare except: catches everything derived from BaseException, including SystemExit and KeyboardInterrupt. Config scripts must not silently continue past sys.exit(), so replace bare except: with except Exception: in the three config-mode scripts that contained one. Library code (python/vyos/configverify.py, python/vyos/config.py) and op-mode scripts are intentionally out of scope: those cases require case-by-case design review (e.g. MTU lookups should accept defaults as arguments rather than rely on exception handling; reset-style op-mode scripts may legitimately want to ignore KeyboardInterrupt). Sites changed: - src/conf_mode/interfaces_ethernet.py (MTU adapter lookup) - src/conf_mode/vpp_interfaces_bonding.py (MAC validation) - src/conf_mode/container.py x2 (IPv4 / IPv6 prefix lookup)
Diffstat (limited to 'src')
-rwxr-xr-xsrc/conf_mode/container.py4
-rwxr-xr-xsrc/conf_mode/interfaces_ethernet.py2
-rw-r--r--src/conf_mode/vpp_interfaces_bonding.py2
3 files changed, 4 insertions, 4 deletions
diff --git a/src/conf_mode/container.py b/src/conf_mode/container.py
index 20ec300aa..19ff0da34 100755
--- a/src/conf_mode/container.py
+++ b/src/conf_mode/container.py
@@ -177,13 +177,13 @@ def verify(container):
try:
network = [x for x in container['network'][network_name]['prefix'] if is_ipv4(x)][0]
cnt_ipv4 += 1
- except:
+ except Exception:
raise ConfigError(f'Network "{network_name}" does not contain an IPv4 prefix!')
elif is_ipv6(address):
try:
network = [x for x in container['network'][network_name]['prefix'] if is_ipv6(x)][0]
cnt_ipv6 += 1
- except:
+ except Exception:
raise ConfigError(f'Network "{network_name}" does not contain an IPv6 prefix!')
# Specified container IP address must belong to network prefix
diff --git a/src/conf_mode/interfaces_ethernet.py b/src/conf_mode/interfaces_ethernet.py
index 2eb36a231..b9177cd34 100755
--- a/src/conf_mode/interfaces_ethernet.py
+++ b/src/conf_mode/interfaces_ethernet.py
@@ -159,7 +159,7 @@ def get_config(config=None):
max_mtu = EthernetIf(ifname).get_max_mtu()
if max_mtu < int(ethernet['mtu']):
ethernet['mtu'] = str(max_mtu)
- except:
+ except Exception:
pass
if 'is_bond_member' in ethernet:
diff --git a/src/conf_mode/vpp_interfaces_bonding.py b/src/conf_mode/vpp_interfaces_bonding.py
index 51272c087..d02975e23 100644
--- a/src/conf_mode/vpp_interfaces_bonding.py
+++ b/src/conf_mode/vpp_interfaces_bonding.py
@@ -188,7 +188,7 @@ def verify(config):
mac = config['mac']
try:
assert_mac(mac, test_all_zero=False)
- except:
+ except Exception:
raise ConfigError(
f'Cannot use {mac}: it is a multicast MAC address. Please provide a unicast MAC address.'
)