Tested-by: Koen vandeputte <koen.vandepu...@ncentric.com <mailto:psi...@gateworks.com>>

This patch also solves the same issue in IBSS mode


Koen

On 2016-07-26 04:45, Masashi Honma wrote:
Previously, secondary channel offset could be non zero even though
disable_ht40=1. This patch fixes it.

Signed-off-by: Masashi Honma<masashi.ho...@gmail.com>
---
  wpa_supplicant/wpa_supplicant.c | 32 ++++++++++++++++++++------------
  1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c
index aa4efd3..0548560 100644
--- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c
@@ -1907,20 +1907,27 @@ void ibss_mesh_setup_freq(struct wpa_supplicant *wpa_s,
                        break;
                }
        }
+#ifdef CONFIG_HT_OVERRIDES
+       if (ssid->disable_ht40)
+               ht40 = 0;
+#endif /* CONFIG_HT_OVERRIDES */
- /* Find secondary channel */
-       for (i = 0; i < mode->num_channels; i++) {
-               sec_chan = &mode->channels[i];
-               if (sec_chan->chan == channel + ht40 * 4)
-                       break;
-               sec_chan = NULL;
-       }
-       if (!sec_chan)
-               return;
+       if (ht40) {
+               /* Find secondary channel */
+               for (i = 0; i < mode->num_channels; i++) {
+                       sec_chan = &mode->channels[i];
+                       if (sec_chan->chan == channel + ht40 * 4)
+                               break;
+                       sec_chan = NULL;
+               }
+               if (!sec_chan)
+                       return;
- /* Check secondary channel flags */
-       if (sec_chan->flag & (HOSTAPD_CHAN_DISABLED | HOSTAPD_CHAN_NO_IR))
-               return;
+               /* Check secondary channel flags */
+               if (sec_chan->flag &
+                   (HOSTAPD_CHAN_DISABLED | HOSTAPD_CHAN_NO_IR))
+                       return;
+       }
freq->channel = pri_chan->chan; @@ -1936,6 +1943,7 @@ void ibss_mesh_setup_freq(struct wpa_supplicant *wpa_s,
                freq->sec_channel_offset = 1;
                break;
        default:
+               freq->sec_channel_offset = 0;
                break;
        }


_______________________________________________
Lede-dev mailing list
Lede-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/lede-dev

Reply via email to