Sfoglia il codice sorgente

qcacld-3.0: Fix disconnect for NUD failure just after roaming

For EAP 802.1x AP, when host received roam sync,  just reassociated, RSO
is still stopped to wait EAPOL handshake finished,  if nud failure is
handled, roaming is failed to invoke and disconnect happens.

To fix it,  don't handle nud failure during EAPOL handshake.

Change-Id: Ia3a9e989ea16443fa157834ef9d4ceb247f82e24
CRs-Fixed: 3233058
Jianmin Zhu 2 anni fa
parent
commit
64204cc788
1 ha cambiato i file con 7 aggiunte e 0 eliminazioni
  1. 7 0
      core/hdd/src/wlan_hdd_nud_tracking.c

+ 7 - 0
core/hdd/src/wlan_hdd_nud_tracking.c

@@ -463,6 +463,13 @@ static void hdd_nud_filter_netevent(struct neighbour *neigh)
 		return;
 	}
 
+	if (!hdd_is_sta_authenticated(adapter)) {
+		hdd_debug("client " QDF_MAC_ADDR_FMT
+			  " is in the middle of WPS/EAPOL exchange.",
+			  QDF_MAC_ADDR_REF(adapter->mac_addr.bytes));
+		return;
+	}
+
 	if (!qdf_is_macaddr_equal(&adapter->nud_tracking.gw_mac_addr,
 				  (struct qdf_mac_addr *)&neigh->ha[0]))
 		return;