Message ID | 20230421181005.4865-1-amisha.patel@microchip.com |
---|---|
State | New |
Headers | show |
Series | [v3] wifi: wilc1000: fix for absent RSN capabilities WFA testcase | expand |
<Amisha.Patel@microchip.com> wrote: > From: Amisha Patel <amisha.patel@microchip.com> > > Mandatory WFA testcase > CT_Security_WPA2Personal_STA_RSNEBoundsVerification-AbsentRSNCap, > performs bounds verfication on Beacon and/or Probe response frames. It > failed and observed the reason to be absence of cipher suite and AKM > suite in RSN information. To fix this, enable the RSN flag before extracting RSN > capabilities. > > Fixes: cd21d99e595e :"wifi: wilc1000: validate pairwise and authentication suite offsets") > Signed-off-by: Amisha Patel <amisha.patel@microchip.com> The fixes tag is wrong, should be: Fixes: cd21d99e595e ("wifi: wilc1000: validate pairwise and authentication suite offsets") I can fix that, no need to resend because of this.
<Amisha.Patel@microchip.com> wrote: > From: Amisha Patel <amisha.patel@microchip.com> > > Mandatory WFA testcase > CT_Security_WPA2Personal_STA_RSNEBoundsVerification-AbsentRSNCap, > performs bounds verfication on Beacon and/or Probe response frames. It > failed and observed the reason to be absence of cipher suite and AKM > suite in RSN information. To fix this, enable the RSN flag before extracting RSN > capabilities. > > Fixes: cd21d99e595e ("wifi: wilc1000: validate pairwise and authentication suite offsets") > Signed-off-by: Amisha Patel <amisha.patel@microchip.com> Patch applied to wireless-next.git, thanks. 9ce4bb09123e wifi: wilc1000: fix for absent RSN capabilities WFA testcase
diff --git a/drivers/net/wireless/microchip/wilc1000/hif.c b/drivers/net/wireless/microchip/wilc1000/hif.c index 5adc69d5bcae..a28da5938481 100644 --- a/drivers/net/wireless/microchip/wilc1000/hif.c +++ b/drivers/net/wireless/microchip/wilc1000/hif.c @@ -485,6 +485,9 @@ void *wilc_parse_join_bss_param(struct cfg80211_bss *bss, int rsn_ie_len = sizeof(struct element) + rsn_ie[1]; int offset = 8; + param->mode_802_11i = 2; + param->rsn_found = true; + /* extract RSN capabilities */ if (offset < rsn_ie_len) { /* skip over pairwise suites */ @@ -494,11 +497,8 @@ void *wilc_parse_join_bss_param(struct cfg80211_bss *bss, /* skip over authentication suites */ offset += (rsn_ie[offset] * 4) + 2; - if (offset + 1 < rsn_ie_len) { - param->mode_802_11i = 2; - param->rsn_found = true; + if (offset + 1 < rsn_ie_len) memcpy(param->rsn_cap, &rsn_ie[offset], 2); - } } } }