summaryrefslogtreecommitdiffhomepage
path: root/interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'interface.c')
-rw-r--r--interface.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/interface.c b/interface.c
index 01dabad..036df6c 100644
--- a/interface.c
+++ b/interface.c
@@ -147,12 +147,24 @@ static void
interface_event(struct interface *iface, enum interface_event ev)
{
struct interface_user *dep, *tmp;
+ struct device *adev = NULL;
list_for_each_entry_safe(dep, tmp, &iface->users, list)
dep->cb(dep, iface, ev);
list_for_each_entry_safe(dep, tmp, &iface_all_users, list)
dep->cb(dep, iface, ev);
+
+ switch (ev) {
+ case IFEV_UP:
+ adev = iface->main_dev.dev;
+ /* fall through */
+ case IFEV_DOWN:
+ alias_notify_device(iface->name, adev);
+ break;
+ default:
+ break;
+ }
}
static void