On Wed, Jan 7, 2015 at 4:21 PM, Arik Nemtsov <[email protected]> wrote:
> The function adding the supported channels IE during a TDLS connection had
> several issues:
> 1. If the entire subband is usable, the function exitted the loop without
>    adding it
> 2. The function only checked chandef_usable, ignoring flags like RADAR
>    which would prevent TDLS off-channel communcation.
> 3. HT20 was explicitly required in the chandef, while not a requirement
>    for TDLS off-channel.
>
> Signed-off-by: Arik Nemtsov <[email protected]>
> Reviewed-by: Emmanuel Grumbach <[email protected]>
> ---
>  net/mac80211/tdls.c | 26 +++++++++++++++++++++-----
>  1 file changed, 21 insertions(+), 5 deletions(-)
>
> diff --git a/net/mac80211/tdls.c b/net/mac80211/tdls.c
> index 55ddd77..c5c4342 100644
> --- a/net/mac80211/tdls.c
> +++ b/net/mac80211/tdls.c
> @@ -68,17 +68,24 @@ ieee80211_tdls_add_subband(struct ieee80211_sub_if_data 
> *sdata,
>                 ch = ieee80211_get_channel(sdata->local->hw.wiphy, i);
>                 if (ch) {
>                         /* we will be active on the channel */
> -                       u32 flags = IEEE80211_CHAN_DISABLED |
> -                                   IEEE80211_CHAN_NO_IR;
>                         cfg80211_chandef_create(&chandef, ch,
> -                                               NL80211_CHAN_HT20);
> -                       if (cfg80211_chandef_usable(sdata->local->hw.wiphy,
> -                                                   &chandef, flags)) {
> +                                               NL80211_CHAN_NO_HT);
> +                       if (cfg80211_reg_can_beacon(sdata->local->hw.wiphy,
> +                                                   &chandef,
> +                                                   sdata->wdev.iftype)) {
>                                 ch_cnt++;
> +                               /*
> +                                * check if the next channel is also part of
> +                                * this allowed range */
> +                                *

argh. resending. this wasn't compiled properly :)
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to