From a57dd68ed40ec77ba0a0fc5a2c641fe344fc0570 Mon Sep 17 00:00:00 2001 From: Christian Breunig Date: Tue, 11 Aug 2026 20:32:52 +0200 Subject: xml: T9179: reject VRF names in interface-name constraint Tab completion for source-interface and other interface leafNodes already excludes VRF names, but the shared interface-name constraint accepted them anyway: an existing VRF is a real net device, so it passed the file-path existence check even though it failed the interface-name regex. Replace the file-path validator with a new interface-exists validator that requires the value to both exist under /sys/class/net and not be a VRF. The regex-match fallback is unchanged, so dynamic interfaces (e.g. pppoe) referenced before they exist still validate correctly. --- interface-definitions/include/constraint/interface-name.xml.i | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'interface-definitions/include/constraint') diff --git a/interface-definitions/include/constraint/interface-name.xml.i b/interface-definitions/include/constraint/interface-name.xml.i index f64ea86f5..33a6ec404 100644 --- a/interface-definitions/include/constraint/interface-name.xml.i +++ b/interface-definitions/include/constraint/interface-name.xml.i @@ -1,4 +1,4 @@ (bond|br|dum|en|ersp|eth|gnv|ifb|ipoe|lan|l2tp|l2tpeth|macsec|peth|ppp|pppoe|pptp|sstp|sstpc|tun|veth|vpptap|vpptun|vti|vtun|vxlan|wg|wlan|wwan)[0-9]+(.\d+)?|pod-[-_a-zA-Z0-9]{1,11}|lo - + -- cgit v1.2.3