aboutsummaryrefslogtreecommitdiffstats
path: root/package/hostapd/patches/410-bring_down_interface.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/hostapd/patches/410-bring_down_interface.patch')
-rw-r--r--package/hostapd/patches/410-bring_down_interface.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/package/hostapd/patches/410-bring_down_interface.patch b/package/hostapd/patches/410-bring_down_interface.patch
new file mode 100644
index 0000000000..31033a01a4
--- /dev/null
+++ b/package/hostapd/patches/410-bring_down_interface.patch
@@ -0,0 +1,25 @@
+--- a/src/drivers/driver_nl80211.c
++++ b/src/drivers/driver_nl80211.c
+@@ -8480,12 +8480,7 @@ static int wpa_driver_nl80211_set_mode(s
+ /* Try to set the mode again while the interface is
+ * down */
+ ret = nl80211_set_mode(drv, drv->ifindex, nlmode);
+- if (ret == -EACCES)
+- break;
+- res = i802_set_iface_flags(bss, 1);
+- if (res && !ret)
+- ret = -1;
+- else if (ret != -EBUSY)
++ if (ret != -EBUSY)
+ break;
+ } else
+ wpa_printf(MSG_DEBUG, "nl80211: Failed to set "
+@@ -8498,6 +8493,8 @@ static int wpa_driver_nl80211_set_mode(s
+ "interface is down");
+ drv->nlmode = nlmode;
+ drv->ignore_if_down_event = 1;
++ if (i802_set_iface_flags(bss, 1))
++ ret = -1;
+ }
+
+ done: