diff options
Diffstat (limited to 'net/mac80211/mlme.c')
| -rw-r--r-- | net/mac80211/mlme.c | 10 | 
1 files changed, 6 insertions, 4 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index c244691deab9..39b660b9a908 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -473,6 +473,7 @@ static void ieee80211_add_ht_ie(struct ieee80211_sub_if_data *sdata,  	case IEEE80211_SMPS_AUTOMATIC:  	case IEEE80211_SMPS_NUM_MODES:  		WARN_ON(1); +		/* fall through */  	case IEEE80211_SMPS_OFF:  		cap |= WLAN_HT_CAP_SM_PS_DISABLED <<  			IEEE80211_HT_CAP_SM_PS_SHIFT; @@ -2861,10 +2862,11 @@ static bool ieee80211_assoc_success(struct ieee80211_sub_if_data *sdata,  	aid = le16_to_cpu(mgmt->u.assoc_resp.aid);  	capab_info = le16_to_cpu(mgmt->u.assoc_resp.capab_info); -	if ((aid & (BIT(15) | BIT(14))) != (BIT(15) | BIT(14))) -		sdata_info(sdata, "invalid AID value 0x%x; bits 15:14 not set\n", -			   aid); -	aid &= ~(BIT(15) | BIT(14)); +	/* +	 * The 5 MSB of the AID field are reserved +	 * (802.11-2016 9.4.1.8 AID field) +	 */ +	aid &= 0x7ff;  	ifmgd->broken_ap = false;  | 
