Commit 9ce4bb09 authored by Amisha Patel's avatar Amisha Patel Committed by Kalle Valo
Browse files

wifi: wilc1000: fix for absent RSN capabilities WFA testcase



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: cd21d99e ("wifi: wilc1000: validate pairwise and authentication suite offsets")
Signed-off-by: default avatarAmisha Patel <amisha.patel@microchip.com>
Signed-off-by: default avatarKalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20230421181005.4865-1-amisha.patel@microchip.com
parent f3dc7bb0
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -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,14 +497,11 @@ 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);
			}
		}
	}
	}

	if (param->rsn_found) {
		int i;