]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
NAN: Check SYNC_CONFIG support
authorAndrei Otcheretianski <andrei.otcheretianski@intel.com>
Tue, 23 Dec 2025 11:46:03 +0000 (13:46 +0200)
committerJouni Malinen <j@w1.fi>
Thu, 29 Jan 2026 10:31:55 +0000 (12:31 +0200)
Currently, NAN support is assumed if NAN device interface is supported.
Since wpa_supplicant NAN implementation is intended to work with new
drivers and kernel only, make sure
WPA_DRIVER_FLAGS_NAN_SUPPORT_SYNC_CONFIG flag is set.

Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com>
wpa_supplicant/nan_supplicant.c

index f25e0bf962a7b4641db555b8410393092382bf5a..4e281a2c602fa1af434fd08bca5dc8900d746e77 100644 (file)
@@ -38,7 +38,9 @@ int wpas_nan_init(struct wpa_supplicant *wpa_s)
 {
        struct nan_config nan;
 
-       if (!(wpa_s->drv_flags2 & WPA_DRIVER_FLAGS2_SUPPORT_NAN)) {
+       if (!(wpa_s->drv_flags2 & WPA_DRIVER_FLAGS2_SUPPORT_NAN) ||
+           !(wpa_s->nan_drv_flags & WPA_DRIVER_FLAGS_NAN_SUPPORT_SYNC_CONFIG))
+       {
                wpa_printf(MSG_INFO, "NAN: Driver does not support NAN");
                return -1;
        }
@@ -84,6 +86,13 @@ int wpas_nan_start(struct wpa_supplicant *wpa_s)
        if (!wpas_nan_ready(wpa_s))
                return -1;
 
+       if (!(wpa_s->nan_drv_flags &
+             WPA_DRIVER_FLAGS_NAN_SUPPORT_SYNC_CONFIG)) {
+               wpa_printf(MSG_DEBUG,
+                          "NAN: Driver doesn't support configurable NAN sync");
+               return -1;
+       }
+
        cluster_config.master_pref = DEFAULT_NAN_MASTER_PREF;
        cluster_config.dual_band = DEFAULT_NAN_DUAL_BAND;