Эх сурвалжийг харах

qcacmn: Add rsn_caps info in scan entry

Adds rsn cap info in scan entry security info, to get the
rsn caps directly from scan entry without need of parsing
RSN IE again.

Change-Id: Ideeb0780841a70fda94d8580dbb025d162716d06
CRs-Fixed: 2786586
gaurank kathpalia 4 жил өмнө
parent
commit
95e8d99b6b

+ 5 - 0
umac/scan/core/src/wlan_scan_filter.c

@@ -207,6 +207,7 @@ static bool scm_chk_crypto_params(struct scan_filter *filter,
 	security->ucastcipherset =
 		ap_crypto->ucastcipherset & filter->ucastcipherset;
 	security->key_mgmt = ap_crypto->key_mgmt & filter->key_mgmt;
+	security->rsn_caps = ap_crypto->rsn_caps;
 
 	return true;
 }
@@ -374,6 +375,7 @@ static bool scm_check_wapi(struct scan_filter *filter,
 	security->ucastcipherset =
 		ap_crypto->ucastcipherset & filter->ucastcipherset;
 	security->key_mgmt = ap_crypto->key_mgmt & filter->key_mgmt;
+	security->rsn_caps = ap_crypto->rsn_caps;
 	qdf_mem_free(ap_crypto);
 
 	return true;
@@ -410,6 +412,7 @@ static bool scm_match_any_security(struct scan_filter *filter,
 		security->mcastcipherset = ap_crypto->mcastcipherset;
 		security->ucastcipherset = ap_crypto->ucastcipherset;
 		security->key_mgmt = ap_crypto->key_mgmt;
+		security->rsn_caps = ap_crypto->rsn_caps;
 		QDF_SET_PARAM(security->authmodeset, WLAN_CRYPTO_AUTH_RSNA);
 		match = true;
 		goto free;
@@ -426,6 +429,7 @@ static bool scm_match_any_security(struct scan_filter *filter,
 		security->mcastcipherset = ap_crypto->mcastcipherset;
 		security->ucastcipherset = ap_crypto->ucastcipherset;
 		security->key_mgmt = ap_crypto->key_mgmt;
+		security->rsn_caps = ap_crypto->rsn_caps;
 		QDF_SET_PARAM(security->authmodeset, WLAN_CRYPTO_AUTH_WPA);
 		match = true;
 		goto free;
@@ -443,6 +447,7 @@ static bool scm_match_any_security(struct scan_filter *filter,
 		security->mcastcipherset = ap_crypto->mcastcipherset;
 		security->ucastcipherset = ap_crypto->ucastcipherset;
 		security->key_mgmt = ap_crypto->key_mgmt;
+		security->rsn_caps = ap_crypto->rsn_caps;
 		QDF_SET_PARAM(security->authmodeset, WLAN_CRYPTO_AUTH_WAPI);
 		match = true;
 		goto free;

+ 2 - 0
umac/scan/dispatcher/inc/wlan_scan_public_structs.h

@@ -239,6 +239,7 @@ struct scan_cache_node {
  * @ucastcipherset: unicast cipher set
  * @mcastcipherset: multicast cipher set
  * @mgmtcipherset: mgmt cipher set
+ * @rsn_caps: rsn caps of scan entry
  */
 struct security_info {
 	uint32_t authmodeset;
@@ -246,6 +247,7 @@ struct security_info {
 	uint32_t ucastcipherset;
 	uint32_t mcastcipherset;
 	uint32_t mgmtcipherset;
+	uint16_t rsn_caps;
 };
 
 /**