Jelajahi Sumber

qcacld-3.0: Send the correct SAE authentication failure reason code

Currently driver fills the reason code as
STATUS_UNSPECIFIED_FAILURE when sae authentication frame is
received or sent with failure status code.
So while processing SAE auth frame sent by AP, the DUT STA reports as
“Wrong password” instead of “Auth error” in the user interface.

Parse the status field for SAE Auth frames received from the
external authentication status command. This should be passed to the
userspace as part of connect failure indication

Change-Id: I9061cef6ac73a74021901dfa056551f51033de0c
CRs-Fixed: 3182981
Aravind Kishore Sukla 2 tahun lalu
induk
melakukan
f8b221da43

+ 1 - 1
core/mac/src/pe/lim/lim_process_deauth_frame.c

@@ -343,7 +343,7 @@ static void lim_process_sae_auth_msg(struct mac_context *mac_ctx,
 
 	sae_msg->vdev_id = pe_session->vdev_id;
 	sae_msg->sae_status = IEEE80211_STATUS_UNSPECIFIED;
-	sae_msg->result_code = eSIR_SME_DEAUTH_WHILE_JOIN;
+	sae_msg->result_code = eSIR_SME_AUTH_REFUSED;
 	qdf_mem_copy(sae_msg->peer_mac_addr, addr, QDF_MAC_ADDR_SIZE);
 	lim_process_sae_msg(mac_ctx, sae_msg);
 

+ 1 - 1
core/mac/src/pe/lim/lim_process_message_queue.c

@@ -99,7 +99,7 @@ static void lim_process_sae_msg_sta(struct mac_context *mac,
 						    session);
 		else
 			lim_restore_from_auth_state(mac, sae_msg->result_code,
-						    STATUS_UNSPECIFIED_FAILURE,
+						    sae_msg->sae_status,
 						    session);
 		break;
 	default: