[PATCH v2 06/15] mesh: inform kernel driver DFS handler in userspace
peter.oh at bowerswilkins.com
peter.oh at bowerswilkins.com
Thu Apr 12 02:49:03 PDT 2018
From: Peter Oh <peter.oh at bowerswilkins.com>
NL80211_ATTR_HANDLE_DFS is required by kerenel space
to enable DFS channels that indicates DFS handler
resides in userspace.
Signed-off-by: Peter Oh <peter.oh at bowerswilkins.com>
---
src/drivers/driver.h | 1 +
src/drivers/driver_nl80211.c | 3 +++
wpa_supplicant/mesh.c | 1 +
3 files changed, 5 insertions(+)
diff --git a/src/drivers/driver.h b/src/drivers/driver.h
index d7aeef99c..6c9245584 100644
--- a/src/drivers/driver.h
+++ b/src/drivers/driver.h
@@ -1390,6 +1390,7 @@ struct wpa_driver_mesh_join_params {
#define WPA_DRIVER_MESH_FLAG_SAE_AUTH 0x00000004
#define WPA_DRIVER_MESH_FLAG_AMPE 0x00000008
unsigned int flags;
+ u8 handle_dfs;
};
/**
diff --git a/src/drivers/driver_nl80211.c b/src/drivers/driver_nl80211.c
index ac06d20fc..d5aa3faf1 100644
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -9244,6 +9244,9 @@ static int nl80211_join_mesh(struct i802_bss *bss,
wpa_printf(MSG_DEBUG, " * flags=%08X", params->flags);
+ if (params->handle_dfs)
+ if (nla_put_flag(msg, NL80211_ATTR_HANDLE_DFS))
+ goto fail;
container = nla_nest_start(msg, NL80211_ATTR_MESH_SETUP);
if (!container)
goto fail;
diff --git a/wpa_supplicant/mesh.c b/wpa_supplicant/mesh.c
index aa710c69f..e5799b4f7 100644
--- a/wpa_supplicant/mesh.c
+++ b/wpa_supplicant/mesh.c
@@ -258,6 +258,7 @@ static int wpa_supplicant_mesh_init(struct wpa_supplicant *wpa_s,
conf->ieee80211d = 1;
conf->country[0] = wpa_s->conf->country[0];
conf->country[1] = wpa_s->conf->country[1];
+ wpa_s->mesh_params->handle_dfs = 1;
}
bss->iconf = conf;
--
2.11.0 (Apple Git-81)
More information about the Hostap
mailing list