|
@@ -172,6 +172,7 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata,
|
|
rcu_assign_pointer(ifibss->presp, skb);
|
|
rcu_assign_pointer(ifibss->presp, skb);
|
|
|
|
|
|
sdata->vif.bss_conf.beacon_int = beacon_int;
|
|
sdata->vif.bss_conf.beacon_int = beacon_int;
|
|
|
|
+ sdata->vif.bss_conf.basic_rates = basic_rates;
|
|
bss_change = BSS_CHANGED_BEACON_INT;
|
|
bss_change = BSS_CHANGED_BEACON_INT;
|
|
bss_change |= ieee80211_reset_erp_info(sdata);
|
|
bss_change |= ieee80211_reset_erp_info(sdata);
|
|
bss_change |= BSS_CHANGED_BSSID;
|
|
bss_change |= BSS_CHANGED_BSSID;
|
|
@@ -529,7 +530,7 @@ static void ieee80211_sta_create_ibss(struct ieee80211_sub_if_data *sdata)
|
|
sdata->drop_unencrypted = 0;
|
|
sdata->drop_unencrypted = 0;
|
|
|
|
|
|
__ieee80211_sta_join_ibss(sdata, bssid, sdata->vif.bss_conf.beacon_int,
|
|
__ieee80211_sta_join_ibss(sdata, bssid, sdata->vif.bss_conf.beacon_int,
|
|
- ifibss->channel, 3, /* first two are basic */
|
|
|
|
|
|
+ ifibss->channel, ifibss->basic_rates,
|
|
capability, 0);
|
|
capability, 0);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -859,6 +860,7 @@ int ieee80211_ibss_join(struct ieee80211_sub_if_data *sdata,
|
|
sdata->u.ibss.fixed_bssid = false;
|
|
sdata->u.ibss.fixed_bssid = false;
|
|
|
|
|
|
sdata->u.ibss.privacy = params->privacy;
|
|
sdata->u.ibss.privacy = params->privacy;
|
|
|
|
+ sdata->u.ibss.basic_rates = params->basic_rates;
|
|
|
|
|
|
sdata->vif.bss_conf.beacon_int = params->beacon_interval;
|
|
sdata->vif.bss_conf.beacon_int = params->beacon_interval;
|
|
|
|
|