X-Git-Url: http://git.archive.openwrt.org/?a=blobdiff_plain;f=interface.c;h=95e1ee8f3d7316b3325f866878dd0183d8af47c1;hb=27cecc14302de7ed2c5cbb63e6969dd7e77f893a;hp=f474246e155df405162ab60e67e77c66ec0c2839;hpb=7233afd94910cb4583c9555840a990287fd5d642;p=project%2Fnetifd.git diff --git a/interface.c b/interface.c index f474246..95e1ee8 100644 --- a/interface.c +++ b/interface.c @@ -780,6 +780,7 @@ interface_set_main_dev(struct interface *iface, struct device *dev) if (iface->main_dev.dev == dev) return; + interface_set_available(iface, false); device_add_user(&iface->main_dev, dev); if (!dev) { interface_set_link_state(iface, false); @@ -807,7 +808,7 @@ interface_remove_link(struct interface *iface, struct device *dev) if (dev != iface->main_dev.dev) return UBUS_STATUS_INVALID_ARGUMENT; - device_remove_user(&iface->main_dev); + interface_set_main_dev(iface, NULL); return 0; }