From 2e394e4dfdb582a3d70c5f13875114e5af295289 Mon Sep 17 00:00:00 2001 From: Christian Breunig Date: Tue, 18 Nov 2025 15:57:45 +0100 Subject: veth: T8017: bugfix KeyError: 'peer_name' Use safe dict_search() function to locate veth peer interface name. If no peer is defined an error will be displayed. --- src/conf_mode/interfaces_virtual-ethernet.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/conf_mode/interfaces_virtual-ethernet.py b/src/conf_mode/interfaces_virtual-ethernet.py index 81a12c581..4bcabe304 100755 --- a/src/conf_mode/interfaces_virtual-ethernet.py +++ b/src/conf_mode/interfaces_virtual-ethernet.py @@ -27,6 +27,7 @@ from vyos.configverify import verify_bridge_delete from vyos.configverify import verify_vrf from vyos.configverify import verify_mtu_ipv6 from vyos.ifconfig import VethIf +from vyos.utils.dict import dict_search from vyos.utils.network import interface_exists airbag.enable() @@ -82,7 +83,7 @@ def verify(veth): raise ConfigError(f'Used peer-name "{peer_name}" on interface "{ifname}" ' \ 'is not configured!') - if veth['other_interfaces'][peer_name]['peer_name'] != ifname: + if dict_search(f'other_interfaces.{peer_name}.peer_name', veth) != ifname: raise ConfigError( f'Configuration mismatch between "{ifname}" and "{peer_name}"!') -- cgit v1.2.3