diff mbox series

wifi: mac80211: Align with Draft P802.11be_D1.5

Message ID 20220916141700.28378-1-howard-yh.hsu@mediatek.com (mailing list archive)
State New, archived
Headers show
Series wifi: mac80211: Align with Draft P802.11be_D1.5 | expand

Commit Message

Howard Hsu Sept. 16, 2022, 2:17 p.m. UTC
Fix ieee80211_prep_channel to aligh with Draft P80211.be_D1.5. It shall
shift 4 byte to fetch EHT Operation information.

Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
---
 net/mac80211/mlme.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jeff Johnson Sept. 16, 2022, 4:25 p.m. UTC | #1
On 9/16/2022 7:17 AM, Howard Hsu wrote:
> Fix ieee80211_prep_channel to aligh with Draft P80211.be_D1.5. It shall

s/aligh/align/

why refer to D1.5? Current code is using D2.0 definitions.

further note it seems at some point we should move all definitions to 
D2.1 (in which case EHT operation information is now at offset 8 of the 
EHT operation element)



> shift 4 byte to fetch EHT Operation information.
> 
> Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
> ---
>   net/mac80211/mlme.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
> index ff449e0c2e62..9bb085eab12a 100644
> --- a/net/mac80211/mlme.c
> +++ b/net/mac80211/mlme.c
> @@ -4735,7 +4735,7 @@ static int ieee80211_prep_channel(struct ieee80211_sub_if_data *sdata,
>   						   cbss_ies->data, cbss_ies->len);
>   		if (eht_oper_ie && eht_oper_ie[1] >=
>   		    1 + sizeof(struct ieee80211_eht_operation))
> -			eht_oper = (void *)(eht_oper_ie + 3);
> +			eht_oper = (void *)(eht_oper_ie + 4);
>   		else
>   			eht_oper = NULL;
>   	}
Johannes Berg Sept. 16, 2022, 4:50 p.m. UTC | #2
On Fri, 2022-09-16 at 22:17 +0800, Howard Hsu wrote:
> Fix ieee80211_prep_channel to aligh with Draft P80211.be_D1.5. It shall
> shift 4 byte to fetch EHT Operation information.
> 
> Signed-off-by: Howard Hsu <howard-yh.hsu@mediatek.com>
> ---
>  net/mac80211/mlme.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
> index ff449e0c2e62..9bb085eab12a 100644
> --- a/net/mac80211/mlme.c
> +++ b/net/mac80211/mlme.c
> @@ -4735,7 +4735,7 @@ static int ieee80211_prep_channel(struct ieee80211_sub_if_data *sdata,
>  						   cbss_ies->data, cbss_ies->len);
>  		if (eht_oper_ie && eht_oper_ie[1] >=
>  		    1 + sizeof(struct ieee80211_eht_operation))
> -			eht_oper = (void *)(eht_oper_ie + 3);
> +			eht_oper = (void *)(eht_oper_ie + 4);
> 


No, the +3 is just to skip the type/len/ext-tag

johannes
diff mbox series

Patch

diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index ff449e0c2e62..9bb085eab12a 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -4735,7 +4735,7 @@  static int ieee80211_prep_channel(struct ieee80211_sub_if_data *sdata,
 						   cbss_ies->data, cbss_ies->len);
 		if (eht_oper_ie && eht_oper_ie[1] >=
 		    1 + sizeof(struct ieee80211_eht_operation))
-			eht_oper = (void *)(eht_oper_ie + 3);
+			eht_oper = (void *)(eht_oper_ie + 4);
 		else
 			eht_oper = NULL;
 	}