interface: allow an interface to specify device configs even when there are other...
[project/netifd.git] / interface.c
index 3281b70..ea018ad 100644 (file)
@@ -525,9 +525,11 @@ interface_set_device_config(struct interface *iface, struct device *dev)
        if (!dev || !dev->default_config)
                return;
 
        if (!dev || !dev->default_config)
                return;
 
-       if (!iface->device_config && !dev->iface_config)
+       if (!iface->device_config &&
+           (!dev->iface_config || dev->config_iface != iface))
                return;
 
                return;
 
+       dev->config_iface = iface;
        dev->iface_config = iface->device_config;
        device_apply_config(dev, dev->type, iface->config);
 }
        dev->iface_config = iface->device_config;
        device_apply_config(dev, dev->type, iface->config);
 }