From 9eb5757a86f7160e7bc926275c7f269dd269ed44 Mon Sep 17 00:00:00 2001 From: Masashi Honma Date: Fri, 27 Jan 2017 13:43:19 +0900 Subject: [PATCH] Define helper function set_disable_ht40() This functionality can be used outside wpa_set_disable_ht40(), so move the generic part to a helper function. Signed-off-by: Masashi Honma --- src/common/hw_features_common.c | 14 ++++++++++++++ src/common/hw_features_common.h | 2 ++ wpa_supplicant/wpa_supplicant.c | 12 ++---------- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/src/common/hw_features_common.c b/src/common/hw_features_common.c index 9c37ea63c..ef4b59df3 100644 --- a/src/common/hw_features_common.c +++ b/src/common/hw_features_common.c @@ -453,3 +453,17 @@ int hostapd_set_freq_params(struct hostapd_freq_params *data, return 0; } + + +void set_disable_ht40(struct ieee80211_ht_capabilities *htcaps, + int disabled) +{ + /* Masking these out disables HT40 */ + le16 msk = host_to_le16(HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET | + HT_CAP_INFO_SHORT_GI40MHZ); + + if (disabled) + htcaps->ht_capabilities_info &= ~msk; + else + htcaps->ht_capabilities_info |= msk; +} diff --git a/src/common/hw_features_common.h b/src/common/hw_features_common.h index 7360b4e3e..234b7bf4d 100644 --- a/src/common/hw_features_common.h +++ b/src/common/hw_features_common.h @@ -35,5 +35,7 @@ int hostapd_set_freq_params(struct hostapd_freq_params *data, int vht_enabled, int sec_channel_offset, int vht_oper_chwidth, int center_segment0, int center_segment1, u32 vht_caps); +void set_disable_ht40(struct ieee80211_ht_capabilities *htcaps, + int disabled); #endif /* HW_FEATURES_COMMON_H */ diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c index 75e58eef3..1c02020ad 100644 --- a/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c @@ -3873,18 +3873,10 @@ static int wpa_set_disable_ht40(struct wpa_supplicant *wpa_s, struct ieee80211_ht_capabilities *htcaps_mask, int disabled) { - /* Masking these out disables HT40 */ - le16 msk = host_to_le16(HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET | - HT_CAP_INFO_SHORT_GI40MHZ); - wpa_msg(wpa_s, MSG_DEBUG, "set_disable_ht40: %d", disabled); - if (disabled) - htcaps->ht_capabilities_info &= ~msk; - else - htcaps->ht_capabilities_info |= msk; - - htcaps_mask->ht_capabilities_info |= msk; + set_disable_ht40(htcaps, disabled); + set_disable_ht40(htcaps_mask, 0); return 0; }