[PATCH 46/92] nl80211: Register for PASN authentication frames for NAN interface

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


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

NAN pairing uses PASN authentication frames. Register for these
frames on a NAN interface.

Signed-off-by: Avraham Stern <avraham.stern at intel.com>
---
 src/drivers/driver_nl80211.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c
index 6394844341..0bc4ef0543 100644
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -2736,6 +2736,7 @@ static int nl80211_mgmt_subscribe_nan(struct i802_bss *bss)
 {
 #ifdef CONFIG_NAN
 	struct wpa_driver_nl80211_data *drv = bss->drv;
+	u16 type = (WLAN_FC_TYPE_MGMT << 2) | (WLAN_FC_STYPE_AUTH << 4);
 
 	if (!(drv->capa.nan_capa.drv_flags &
 	      WPA_DRIVER_FLAGS_NAN_SUPPORT_USERSPACE_DE)) {
@@ -2769,6 +2770,16 @@ static int nl80211_mgmt_subscribe_nan(struct i802_bss *bss)
 		nl_destroy_handles(&bss->nl_mgmt);
 		return -1;
 	}
+#ifdef CONFIG_PASN
+	/* register for PASN Authentication frames */
+	if (nl80211_register_frame(bss, bss->nl_mgmt, type, (u8 *)"\x07\x00", 2,
+				   false)) {
+		wpa_printf(MSG_DEBUG,
+			   "nl80211: Failed to subscribe to NAN public action frames");
+		nl_destroy_handles(&bss->nl_mgmt);
+		return -1;
+	}
+#endif /* CONFIG_PASN */
 
 	nl80211_mgmt_handle_register_eloop(bss);
 
-- 
2.53.0




More information about the Hostap mailing list