[PATCH 62/97] NAN: Add a function to check if there are active NDPs

Andrei Otcheretianski andrei.otcheretianski at intel.com
Tue Apr 28 13:06:03 PDT 2026


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

Add a function that iterates over the peer list and checks for
active NDPs.

Signed-off-by: Avraham Stern <avraham.stern at intel.com>
---
 src/nan/nan.c | 16 ++++++++++++++++
 src/nan/nan.h |  1 +
 2 files changed, 17 insertions(+)

diff --git a/src/nan/nan.c b/src/nan/nan.c
index 0e09dd6f67..b23b64a6e6 100644
--- a/src/nan/nan.c
+++ b/src/nan/nan.c
@@ -3264,3 +3264,19 @@ int nan_set_max_ndl_idle_period(struct nan_data *nan, u16 max_idle_period)
 				       nan, NULL);
 	return 0;
 }
+
+
+bool nan_has_active_ndp(struct nan_data *nan)
+{
+	struct nan_peer *peer;
+
+	if (!nan)
+		return false;
+
+	dl_list_for_each(peer, &nan->peer_list, struct nan_peer, list) {
+		if (!dl_list_empty(&peer->ndps))
+			return true;
+	}
+
+	return false;
+}
diff --git a/src/nan/nan.h b/src/nan/nan.h
index b0f0fd0bac..0aa380e4d4 100644
--- a/src/nan/nan.h
+++ b/src/nan/nan.h
@@ -863,6 +863,7 @@ int nan_ndp_requested_gtk_csid(struct nan_data *nan, struct nan_ndp_id *ndp_id);
 int nan_set_mgmt_group_cipher(struct nan_data *nan, int cipher);
 int nan_set_beacon_prot(struct nan_data *nan, bool enable);
 int nan_set_max_ndl_idle_period(struct nan_data *nan, u16 max_idle_period);
+bool nan_has_active_ndp(struct nan_data *nan);
 #ifdef CONFIG_PASN
 int nan_pairing_add_attrs(struct nan_data *nan_data, struct wpabuf *buf);
 int nan_pairing_initiate_pasn_auth(struct nan_data *nan_data, const u8 *addr,
-- 
2.53.0




More information about the Hostap mailing list