[PATCH 27/92] wpa_supplicant: Redirect PASN auth Tx status to NAN module

Andrei Otcheretianski andrei.otcheretianski at intel.com
Wed Apr 22 05:23:18 PDT 2026


From: Avraham Stern <avraham.stern at intel.com>

Redirect PASN auth Tx status events received on the NAN management
interface to the NAN module to handle.

Signed-off-by: Avraham Stern <avraham.stern at intel.com>
---
 wpa_supplicant/events.c         | 11 +++++++++++
 wpa_supplicant/nan_supplicant.c |  9 +++++++++
 wpa_supplicant/nan_supplicant.h |  2 ++
 3 files changed, 22 insertions(+)

diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c
index c559e52879..829e8b040e 100644
--- a/wpa_supplicant/events.c
+++ b/wpa_supplicant/events.c
@@ -6892,6 +6892,17 @@ void wpa_supplicant_event(void *ctx, enum wpa_event_type event,
 						data->tx_status.ack) == 0)
 			break;
 #endif /* CONFIG_PR */
+#ifdef CONFIG_NAN
+		if (wpa_s->nan_mgmt &&
+		    data->tx_status.type == WLAN_FC_TYPE_MGMT &&
+		    data->tx_status.stype == WLAN_FC_STYPE_AUTH &&
+		    !wpa_s->pasn_auth_work &&
+		    wpas_nan_pasn_auth_tx_status(wpa_s, data->tx_status.data,
+						 data->tx_status.data_len,
+						 data->tx_status.ack) == 0)
+			break;
+#endif /* CONFIG_NAN */
+
 		if (data->tx_status.type == WLAN_FC_TYPE_MGMT &&
 		    data->tx_status.stype == WLAN_FC_STYPE_AUTH &&
 		    wpas_pasn_auth_tx_status(wpa_s, data->tx_status.data,
diff --git a/wpa_supplicant/nan_supplicant.c b/wpa_supplicant/nan_supplicant.c
index a510a64c5f..7d056ffc4d 100644
--- a/wpa_supplicant/nan_supplicant.c
+++ b/wpa_supplicant/nan_supplicant.c
@@ -2678,6 +2678,15 @@ int wpas_nan_pairing_start(struct wpa_supplicant *wpa_s, char *cmd)
 
 	return 0;
 }
+
+
+int wpas_nan_pasn_auth_tx_status(struct wpa_supplicant *wpa_s, const u8 *data,
+				 size_t data_len, bool acked)
+{
+	struct nan_data *nan = wpa_s->nan;
+
+	return nan_pairing_pasn_auth_tx_status(nan, data, data_len, acked);
+}
 #endif /* CONFIG_PASN */
 #endif /* CONFIG_NAN */
 
diff --git a/wpa_supplicant/nan_supplicant.h b/wpa_supplicant/nan_supplicant.h
index 3722b3eab0..af5b6f97cd 100644
--- a/wpa_supplicant/nan_supplicant.h
+++ b/wpa_supplicant/nan_supplicant.h
@@ -40,6 +40,8 @@ int wpas_nan_pair(struct wpa_supplicant *wpa_s, const u8 *peer_addr,
 		  u8 auth_mode, int cipher, int handle, u8 peer_instance_id,
 		  bool responder, const char *password);
 int wpas_nan_pairing_start(struct wpa_supplicant *wpa_s, char *cmd);
+int wpas_nan_pasn_auth_tx_status(struct wpa_supplicant *wpa_s, const u8 *data,
+				 size_t data_len, bool acked);
 #endif /* CONFIG_PASN */
 
 #else /* CONFIG_NAN */
-- 
2.53.0




More information about the Hostap mailing list