From: Alexander Couzens Date: Wed, 26 Feb 2020 00:48:15 +0000 (+0100) Subject: HACK: hostapd: a quick fix in the wrong way X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=e32ff7be08c734244f187162685e8187a7a76c76;p=openwrt%2Fstaging%2Flynxis.git HACK: hostapd: a quick fix in the wrong way --- diff --git a/package/network/services/hostapd/patches/999-HACK-fix-object-dependencies.patch b/package/network/services/hostapd/patches/999-HACK-fix-object-dependencies.patch new file mode 100644 index 0000000000..e1bf79819e --- /dev/null +++ b/package/network/services/hostapd/patches/999-HACK-fix-object-dependencies.patch @@ -0,0 +1,98 @@ +Index: hostapd-2019-08-08-ca8c2bd2/hostapd/Makefile +=================================================================== +--- hostapd-2019-08-08-ca8c2bd2.orig/hostapd/Makefile ++++ hostapd-2019-08-08-ca8c2bd2/hostapd/Makefile +@@ -215,7 +215,7 @@ ifdef CONFIG_FULL_DYNAMIC_VLAN + # Define CONFIG_FULL_DYNAMIC_VLAN to have hostapd manipulate bridges + # and VLAN interfaces for the VLAN feature. + CFLAGS += -DCONFIG_FULL_DYNAMIC_VLAN +-OBJS += ../src/ap/vlan_full.o ++OBJS += ../src/ap/vlan_full.o ../src/drivers/linux_ioctl.o + ifdef CONFIG_VLAN_NETLINK + OBJS += ../src/ap/vlan_util.o + else +Index: hostapd-2019-08-08-ca8c2bd2/src/ap/beacon.c +=================================================================== +--- hostapd-2019-08-08-ca8c2bd2.orig/src/ap/beacon.c ++++ hostapd-2019-08-08-ca8c2bd2/src/ap/beacon.c +@@ -33,6 +33,36 @@ + #include "taxonomy.h" + #include "ieee802_11_auth.h" + ++static struct hostapd_sta_info * sta_track_get(struct hostapd_iface *iface, ++ const u8 *addr) ++{ ++ struct hostapd_sta_info *info; ++ ++ dl_list_for_each(info, &iface->sta_seen, struct hostapd_sta_info, list) ++ if (os_memcmp(addr, info->addr, ETH_ALEN) == 0) ++ return info; ++ ++ return NULL; ++} ++ ++ ++#ifdef CONFIG_TAXONOMY ++void sta_track_claim_taxonomy_info(struct hostapd_iface *iface, const u8 *addr, ++ struct wpabuf **probe_ie_taxonomy) ++{ ++ struct hostapd_sta_info *info; ++ ++ info = sta_track_get(iface, addr); ++ if (!info) ++ return; ++ ++ wpabuf_free(*probe_ie_taxonomy); ++ *probe_ie_taxonomy = info->probe_ie_taxonomy; ++ info->probe_ie_taxonomy = NULL; ++} ++#endif /* CONFIG_TAXONOMY */ ++ ++ + + #ifdef NEED_AP_MLME + +@@ -637,19 +667,6 @@ void sta_track_expire(struct hostapd_ifa + } + + +-static struct hostapd_sta_info * sta_track_get(struct hostapd_iface *iface, +- const u8 *addr) +-{ +- struct hostapd_sta_info *info; +- +- dl_list_for_each(info, &iface->sta_seen, struct hostapd_sta_info, list) +- if (os_memcmp(addr, info->addr, ETH_ALEN) == 0) +- return info; +- +- return NULL; +-} +- +- + void sta_track_add(struct hostapd_iface *iface, const u8 *addr, int ssi_signal) + { + struct hostapd_sta_info *info; +@@ -710,23 +727,6 @@ sta_track_seen_on(struct hostapd_iface * + } + + +-#ifdef CONFIG_TAXONOMY +-void sta_track_claim_taxonomy_info(struct hostapd_iface *iface, const u8 *addr, +- struct wpabuf **probe_ie_taxonomy) +-{ +- struct hostapd_sta_info *info; +- +- info = sta_track_get(iface, addr); +- if (!info) +- return; +- +- wpabuf_free(*probe_ie_taxonomy); +- *probe_ie_taxonomy = info->probe_ie_taxonomy; +- info->probe_ie_taxonomy = NULL; +-} +-#endif /* CONFIG_TAXONOMY */ +- +- + void handle_probe_req(struct hostapd_data *hapd, + const struct ieee80211_mgmt *mgmt, size_t len, + int ssi_signal) diff --git a/package/network/services/hostapd/patches/999-lynxis-second.patch b/package/network/services/hostapd/patches/999-lynxis-second.patch new file mode 100644 index 0000000000..e69de29bb2