aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/wext.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211/wext.c')
-rw-r--r--net/mac80211/wext.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/net/mac80211/wext.c b/net/mac80211/wext.c
index 207971e9ad72..e8e4a6215e89 100644
--- a/net/mac80211/wext.c
+++ b/net/mac80211/wext.c
@@ -627,16 +627,14 @@ static int ieee80211_ioctl_siwrate(struct net_device *dev,
627 struct ieee80211_supported_band *sband; 627 struct ieee80211_supported_band *sband;
628 628
629 sdata = IEEE80211_DEV_TO_SUB_IF(dev); 629 sdata = IEEE80211_DEV_TO_SUB_IF(dev);
630 if (!sdata->bss)
631 return -ENODEV;
632 630
633 sband = local->hw.wiphy->bands[local->hw.conf.channel->band]; 631 sband = local->hw.wiphy->bands[local->hw.conf.channel->band];
634 632
635 /* target_rate = -1, rate->fixed = 0 means auto only, so use all rates 633 /* target_rate = -1, rate->fixed = 0 means auto only, so use all rates
636 * target_rate = X, rate->fixed = 1 means only rate X 634 * target_rate = X, rate->fixed = 1 means only rate X
637 * target_rate = X, rate->fixed = 0 means all rates <= X */ 635 * target_rate = X, rate->fixed = 0 means all rates <= X */
638 sdata->bss->max_ratectrl_rateidx = -1; 636 sdata->max_ratectrl_rateidx = -1;
639 sdata->bss->force_unicast_rateidx = -1; 637 sdata->force_unicast_rateidx = -1;
640 if (rate->value < 0) 638 if (rate->value < 0)
641 return 0; 639 return 0;
642 640
@@ -645,9 +643,9 @@ static int ieee80211_ioctl_siwrate(struct net_device *dev,
645 int this_rate = brate->bitrate; 643 int this_rate = brate->bitrate;
646 644
647 if (target_rate == this_rate) { 645 if (target_rate == this_rate) {
648 sdata->bss->max_ratectrl_rateidx = i; 646 sdata->max_ratectrl_rateidx = i;
649 if (rate->fixed) 647 if (rate->fixed)
650 sdata->bss->force_unicast_rateidx = i; 648 sdata->force_unicast_rateidx = i;
651 err = 0; 649 err = 0;
652 break; 650 break;
653 } 651 }