kernel/modules: snd-pcm-dmaengine only if CONFIG_SND_DMAENGINE_PCM is set
[openwrt/svn-archive/archive.git] / package / network / services / hostapd / patches / 510-bring_down_interface.patch
index 7481eb152a001e64c60622ee80e8334d883925a0..e7520df341262b2a35001328b57fd716d4d7f951 100644 (file)
@@ -1,19 +1,25 @@
 --- a/src/drivers/driver_nl80211.c
 +++ b/src/drivers/driver_nl80211.c
-@@ -7144,8 +7144,6 @@ static int wpa_driver_nl80211_set_mode(s
+@@ -8145,12 +8145,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)
+-                      if (ret == -EACCES)
+-                              break;
+-                      res = i802_set_iface_flags(bss, 1);
+-                      if (res && !ret)
+-                              ret = -1;
+-                      else if (ret != -EBUSY)
++                      if (ret != -EBUSY)
                                break;
--                      res = linux_set_iface_flags(drv->global->ioctl_sock,
--                                                  bss->ifname, 1);
-                       if (res && !ret)
-                               ret = -1;
-                       else if (ret != -EBUSY)
-@@ -7161,6 +7159,7 @@ static int wpa_driver_nl80211_set_mode(s
+               } else
+                       wpa_printf(MSG_DEBUG, "nl80211: Failed to set "
+@@ -8163,6 +8158,8 @@ static int wpa_driver_nl80211_set_mode(s
                           "interface is down");
                drv->nlmode = nlmode;
                drv->ignore_if_down_event = 1;
-+              linux_set_iface_flags(drv->global->ioctl_sock, bss->ifname, 1);
++              if (i802_set_iface_flags(bss, 1))
++                      ret = -1;
        }
  
  done: