openwrt/package/network/services/hostapd/patches/803-hostapd-fix-80211be-build.patch
Janusz Dziedzic d1fc8c3db0 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 <janusz.dziedzic@gmail.com>
2024-10-02 15:12:18 +02:00

54 lines
1.3 KiB
Diff

--- 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);