diff mbox series

wpa_supplicant: respect disable_ht40/disable_vht/disable_he in ap/mesh mode

Message ID 20230628121704.301305-1-nico.escande@gmail.com
State Accepted
Headers show
Series wpa_supplicant: respect disable_ht40/disable_vht/disable_he in ap/mesh mode | expand

Commit Message

Nicolas Escande June 28, 2023, 12:17 p.m. UTC
When using wpa_supplicant to connect to a mesh network or to create an ap, the
current code doesn't respect all CONFIG_XXX_OVERRIDES network parameters, just
disable_ht in CONFIG_HT_OVERRIDES.

This patch adds support for some of the others modulation related disable flags:
 - disable_ht40 with CONFIG_HT_OVERRIDES
 - disable_vht with CONFIG_VHT_OVERRIDES
 - disable_he with CONFIG_HE_OVERRIDES

Signed-off-by: Nicolas Escande <nico.escande@gmail.com>
---
 wpa_supplicant/ap.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

Jouni Malinen Oct. 29, 2023, 2:55 p.m. UTC | #1
On Wed, Jun 28, 2023 at 02:17:04PM +0200, Nicolas Escande wrote:
> When using wpa_supplicant to connect to a mesh network or to create an ap, the
> current code doesn't respect all CONFIG_XXX_OVERRIDES network parameters, just
> disable_ht in CONFIG_HT_OVERRIDES.
> 
> This patch adds support for some of the others modulation related disable flags:
>  - disable_ht40 with CONFIG_HT_OVERRIDES
>  - disable_vht with CONFIG_VHT_OVERRIDES
>  - disable_he with CONFIG_HE_OVERRIDES

Thanks, applied.
diff mbox series

Patch

diff --git a/wpa_supplicant/ap.c b/wpa_supplicant/ap.c
index ff7c75644..2fc9f453b 100644
--- a/wpa_supplicant/ap.c
+++ b/wpa_supplicant/ap.c
@@ -314,8 +314,20 @@  int wpa_supplicant_conf_ap_ht(struct wpa_supplicant *wpa_s,
 #ifdef CONFIG_HT_OVERRIDES
 		if (ssid->disable_ht)
 			ssid->ht = 0;
+		if (ssid->disable_ht40)
+			ssid->ht40 = 0;
 #endif /* CONFIG_HT_OVERRIDES */
 
+#ifdef CONFIG_VHT_OVERRIDES
+		if (ssid->disable_vht)
+			ssid->vht = 0;
+#endif /* CONFIG_VHT_OVERRIDES */
+
+#ifdef CONFIG_HE_OVERRIDES
+		if (ssid->disable_he)
+			ssid->he = 0;
+#endif /* CONFIG_HE_OVERRIDES */
+
 		if (!ssid->ht) {
 			wpa_printf(MSG_DEBUG,
 				   "HT not enabled in network profile");