diff options
author | Johannes Berg <johannes.berg@intel.com> | 2012-07-23 14:53:27 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2012-07-31 16:18:56 +0200 |
commit | 6b77863b719a4e32909c218c0d5a83a14f4d98c5 (patch) | |
tree | d259001a7b7c4963de72cd6b3b9bf8d350d2f1c8 /net/mac80211/mesh_plink.c | |
parent | 679ef4eadde1f8e55074427c0d8de2da55ca81f9 (diff) | |
download | talos-obmc-linux-6b77863b719a4e32909c218c0d5a83a14f4d98c5.tar.gz talos-obmc-linux-6b77863b719a4e32909c218c0d5a83a14f4d98c5.zip |
mac80211: fix current vs. operating channel in preq/beacon
When sending probe requests, e.g. during software scanning,
these will go out on the *current* channel, so their IEs
need to be built from the current channel. At other times,
e.g. for beacons or probe request templates, the IEs will
be used on the *operating* channel and using the current
channel instead might result in errors.
Add the appropriate parameters to respect the difference.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/mesh_plink.c')
-rw-r--r-- | net/mac80211/mesh_plink.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/mac80211/mesh_plink.c b/net/mac80211/mesh_plink.c index fa642c794719..985b37f7455d 100644 --- a/net/mac80211/mesh_plink.c +++ b/net/mac80211/mesh_plink.c @@ -258,8 +258,10 @@ static int mesh_plink_frame_tx(struct ieee80211_sub_if_data *sdata, pos = skb_put(skb, 2); memcpy(pos + 2, &plid, 2); } - if (ieee80211_add_srates_ie(sdata, skb, true) || - ieee80211_add_ext_srates_ie(sdata, skb, true) || + if (ieee80211_add_srates_ie(sdata, skb, true, + local->oper_channel->band) || + ieee80211_add_ext_srates_ie(sdata, skb, true, + local->oper_channel->band) || mesh_add_rsn_ie(skb, sdata) || mesh_add_meshid_ie(skb, sdata) || mesh_add_meshconf_ie(skb, sdata)) |