From c8e0a11ed19f202eabba3f149ff0576af4f2a5ba Mon Sep 17 00:00:00 2001 From: Julien Fortin Date: Wed, 27 Jun 2018 23:45:24 +0300 Subject: [PATCH] addons: bridge: warn users if bridge attributes are used under non-bridge stanza This check is done without too much overhead because we rarely see a stanza with more than a handful of attributes... $ ifquery swp1 auto swp1 iface swp1 bridge-vlan-aware yes bridge-stp off $ ifup swp1 -v ... info: swp1: running ops ... warning: swp1: invalid use of bridge attribute (bridge-vlan-aware) on non-bridge stanza warning: swp1: invalid use of bridge attribute (bridge-stp) on non-bridge stanza .. $ Reviewed-by: Roopa Prabhu Signed-off-by: Julien Fortin --- ifupdown2/addons/bridge.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ifupdown2/addons/bridge.py b/ifupdown2/addons/bridge.py index 1b4dcdd..763b886 100644 --- a/ifupdown2/addons/bridge.py +++ b/ifupdown2/addons/bridge.py @@ -2163,6 +2163,14 @@ class bridge(moduleBase): elif ifaceobj.link_kind & ifaceLinkKind.BRIDGE: self.up_bridge(ifaceobj, ifaceobj_getfunc) + else: + bridge_attributes = self._modinfo.get('attrs', {}).keys() + + for ifaceobj_config_attr in ifaceobj.config.keys(): + if ifaceobj_config_attr in bridge_attributes: + self.logger.warning('%s: invalid use of bridge attribute (%s) on non-bridge stanza' + % (ifaceobj.name, ifaceobj_config_attr)) + def _down(self, ifaceobj, ifaceobj_getfunc=None): if not self._is_bridge(ifaceobj): return