From: Janusz Dziedzic Date: Tue, 20 Aug 2024 11:22:31 +0000 (+0200) Subject: hostapd: fix build when 80211BE enabled X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=d1fc8c3db0e75f625b810cd57c4ee3d9493f8c57;p=openwrt%2Fstaging%2Fblocktrron.git hostapd: fix build when 80211BE enabled In file included from hostapd-wpad-basic-mbedtls/hostapd-2024.03.09~695277a5/src/ap/ubus.h:11, from hostapd-wpad-basic-mbedtls/hostapd-2024.03.09~695277a5/src/ap/hostapd.h:21, from main.c:26: hostapd-2024.03.09~695277a5/src/ap/sta_info.h: In function 'ap_sta_is_mld': hostapd-2024.03.09~695277a5/src/ap/sta_info.h:425:20: error: invalid use of undefined type 'struct hostapd_data' 425 | return hapd->conf->mld_ap && sta && sta->mld_info.mld_sta; | ^~ Signed-off-by: Janusz Dziedzic --- diff --git a/package/network/services/hostapd/patches/803-hostapd-fix-80211be-build.patch b/package/network/services/hostapd/patches/803-hostapd-fix-80211be-build.patch new file mode 100644 index 0000000000..55c6e63581 --- /dev/null +++ b/package/network/services/hostapd/patches/803-hostapd-fix-80211be-build.patch @@ -0,0 +1,53 @@ +--- a/src/ap/sta_info.c ++++ b/src/ap/sta_info.c +@@ -1836,3 +1836,22 @@ void ap_sta_free_sta_profile(struct mld_ + } + } + #endif /* CONFIG_IEEE80211BE */ ++ ++bool ap_sta_is_mld(struct hostapd_data *hapd, ++ struct sta_info *sta) ++{ ++#ifdef CONFIG_IEEE80211BE ++ return hapd->conf->mld_ap && sta && sta->mld_info.mld_sta; ++#else /* CONFIG_IEEE80211BE */ ++ return false; ++#endif /* CONFIG_IEEE80211BE */ ++} ++ ++void ap_sta_set_mld(struct sta_info *sta, bool mld) ++{ ++#ifdef CONFIG_IEEE80211BE ++ if (sta) ++ sta->mld_info.mld_sta = mld; ++#endif /* CONFIG_IEEE80211BE */ ++} ++ +--- a/src/ap/sta_info.h ++++ b/src/ap/sta_info.h +@@ -417,23 +417,8 @@ int ap_sta_re_add(struct hostapd_data *h + + void ap_free_sta_pasn(struct hostapd_data *hapd, struct sta_info *sta); + +-static inline bool ap_sta_is_mld(struct hostapd_data *hapd, +- struct sta_info *sta) +-{ +-#ifdef CONFIG_IEEE80211BE +- return hapd->conf->mld_ap && sta && sta->mld_info.mld_sta; +-#else /* CONFIG_IEEE80211BE */ +- return false; +-#endif /* CONFIG_IEEE80211BE */ +-} +- +-static inline void ap_sta_set_mld(struct sta_info *sta, bool mld) +-{ +-#ifdef CONFIG_IEEE80211BE +- if (sta) +- sta->mld_info.mld_sta = mld; +-#endif /* CONFIG_IEEE80211BE */ +-} ++bool ap_sta_is_mld(struct hostapd_data *hapd, struct sta_info *sta); ++void ap_sta_set_mld(struct sta_info *sta, bool mld); + + void ap_sta_free_sta_profile(struct mld_info *info); +