3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2025-02-01 22:34:07 +01:00

ap, adhoc: On NETDEV_WATCH_EVENT_NEW check device is UP

Since the interfaces are not supposed to exist when the device is DOWN
(we destroy the interfaces on NETDEV_WATCH_EVENT_DOWN too), don't
create the interfaces if the device hasn't been brought up yet.
This commit is contained in:
Andrew Zaborowski 2018-09-22 18:48:22 +02:00 committed by Denis Kenzior
parent 99e7e0d977
commit f9faeed7bb
2 changed files with 4 additions and 2 deletions

View File

@ -548,7 +548,8 @@ static void adhoc_netdev_watch(struct netdev *netdev,
switch (event) {
case NETDEV_WATCH_EVENT_UP:
case NETDEV_WATCH_EVENT_NEW:
if (netdev_get_iftype(netdev) == NETDEV_IFTYPE_ADHOC)
if (netdev_get_iftype(netdev) == NETDEV_IFTYPE_ADHOC &&
netdev_get_is_up(netdev))
adhoc_add_interface(netdev);
break;
case NETDEV_WATCH_EVENT_DOWN:

View File

@ -1460,7 +1460,8 @@ static void ap_netdev_watch(struct netdev *netdev,
switch (event) {
case NETDEV_WATCH_EVENT_UP:
case NETDEV_WATCH_EVENT_NEW:
if (netdev_get_iftype(netdev) == NETDEV_IFTYPE_AP)
if (netdev_get_iftype(netdev) == NETDEV_IFTYPE_AP &&
netdev_get_is_up(netdev))
ap_add_interface(netdev);
break;
case NETDEV_WATCH_EVENT_DOWN: