forked from mirrors/linux
		
	wifi: nl80211: fix puncturing bitmap policy
This was meant to be a u32, and while applying the patch
I tried to use policy validation for it. However, not only
did I copy/paste it to u8 instead of u32, but also used
the policy range erroneously. Fix both of these issues.
Fixes: d7c1a9a0ed ("wifi: nl80211: validate and configure puncturing bitmap")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
			
			
This commit is contained in:
		
							parent
							
								
									f624bb6fad
								
							
						
					
					
						commit
						b27f07c50a
					
				
					 1 changed files with 7 additions and 1 deletions
				
			
		|  | @ -462,6 +462,11 @@ nl80211_sta_wme_policy[NL80211_STA_WME_MAX + 1] = { | |||
| 	[NL80211_STA_WME_MAX_SP] = { .type = NLA_U8 }, | ||||
| }; | ||||
| 
 | ||||
| static struct netlink_range_validation nl80211_punct_bitmap_range = { | ||||
| 	.min = 0, | ||||
| 	.max = 0xffff, | ||||
| }; | ||||
| 
 | ||||
| static const struct nla_policy nl80211_policy[NUM_NL80211_ATTR] = { | ||||
| 	[0] = { .strict_start_type = NL80211_ATTR_HE_OBSS_PD }, | ||||
| 	[NL80211_ATTR_WIPHY] = { .type = NLA_U32 }, | ||||
|  | @ -805,7 +810,8 @@ static const struct nla_policy nl80211_policy[NUM_NL80211_ATTR] = { | |||
| 	[NL80211_ATTR_MLD_ADDR] = NLA_POLICY_EXACT_LEN(ETH_ALEN), | ||||
| 	[NL80211_ATTR_MLO_SUPPORT] = { .type = NLA_FLAG }, | ||||
| 	[NL80211_ATTR_MAX_NUM_AKM_SUITES] = { .type = NLA_REJECT }, | ||||
| 	[NL80211_ATTR_PUNCT_BITMAP] = NLA_POLICY_RANGE(NLA_U8, 0, 0xffff), | ||||
| 	[NL80211_ATTR_PUNCT_BITMAP] = | ||||
| 		NLA_POLICY_FULL_RANGE(NLA_U32, &nl80211_punct_bitmap_range), | ||||
| }; | ||||
| 
 | ||||
| /* policy for the key attributes */ | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Johannes Berg
						Johannes Berg