qcacmn: Prevent FILS delkey from calling CRYPTO_OPS
Prevent delkey to call crypto_ops for FILS cipher
type, as this keys are not present in FW.
Change-Id: Ica13a62b6822ee3cee40acffa98b7cc1cb122120
CRs-Fixed: 2520517
diff --git a/umac/cmn_services/crypto/src/wlan_crypto_global_api.c b/umac/cmn_services/crypto/src/wlan_crypto_global_api.c
index 92c1660..03d7ed9 100644
--- a/umac/cmn_services/crypto/src/wlan_crypto_global_api.c
+++ b/umac/cmn_services/crypto/src/wlan_crypto_global_api.c
@@ -1095,9 +1095,13 @@
cipher_table = (struct wlan_crypto_cipher *)key->cipher_table;
qdf_mem_zero(key->keyval, sizeof(key->keyval));
- if (WLAN_CRYPTO_TX_OPS_DELKEY(psoc)) {
+ if (!IS_FILS_CIPHER(cipher_table->cipher) &&
+ WLAN_CRYPTO_TX_OPS_DELKEY(psoc)) {
WLAN_CRYPTO_TX_OPS_DELKEY(psoc)(vdev, key,
macaddr, cipher_table->cipher);
+ } else if (IS_FILS_CIPHER(cipher_table->cipher)) {
+ if (key->private)
+ qdf_mem_free(key->private);
}
}
qdf_mem_free(key);