From 5aab43f93388b1e35d80892e1534584e83802f89 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Thu, 4 Apr 2024 13:19:49 +0200 Subject: [PATCH] hostapd: slightly clean up patches - move build/ifdef related changes together to the 200 patch range - reduce adding/removing include statements across patches - move patches away from the 99x patch range to simplify maintenance Signed-off-by: Felix Fietkau --- ...3156.patch => 050-Fix-OpenWrt-13156.patch} | 6 ++--- ...extra-ies-only-if-allowed-by-driver.patch} | 2 +- .../hostapd/patches/200-multicall.patch | 4 ++-- ....patch => 201-lto-jobserver-support.patch} | 6 ++--- ...AP-functions-dependant-on-CONFIG_AP.patch} | 4 ++-- ...on-of-WLAN_SUPP_RATES_MAX-to-defs.h.patch} | 20 ---------------- ... => 213-wpa_supplicant-fix-warnings.patch} | 0 ...ures.patch => 220-indicate-features.patch} | 0 ...fdef.patch => 250-hostapd_cli_ifdef.patch} | 0 ...li_ifdef.patch => 251-wpa_cli_ifdef.patch} | 0 ...patch => 252-disable_ctrl_iface_mib.patch} | 0 ...53-qos_map_set_without_interworking.patch} | 6 ++--- .../381-hostapd_cli_UNKNOWN-COMMAND.patch | 2 +- ...dd-new-config-params-to-be-used-with.patch | 23 ++----------------- .../hostapd/patches/600-ubus_support.patch | 6 ++--- .../hostapd/patches/601-ucode_support.patch | 8 +++---- .../hostapd/patches/740-snoop_iface.patch | 2 +- 17 files changed, 25 insertions(+), 64 deletions(-) rename package/network/services/hostapd/patches/{991-Fix-OpenWrt-13156.patch => 050-Fix-OpenWrt-13156.patch} (91%) rename package/network/services/hostapd/patches/{992-nl80211-add-extra-ies-only-if-allowed-by-driver.patch => 051-nl80211-add-extra-ies-only-if-allowed-by-driver.patch} (98%) rename package/network/services/hostapd/patches/{500-lto-jobserver-support.patch => 201-lto-jobserver-support.patch} (91%) rename package/network/services/hostapd/patches/{990-ctrl-make-WNM_AP-functions-dependant-on-CONFIG_AP.patch => 211-ctrl-make-WNM_AP-functions-dependant-on-CONFIG_AP.patch} (90%) rename package/network/services/hostapd/patches/{461-Move-definition-of-WLAN_SUPP_RATES_MAX-to-defs.h.patch => 212-Move-definition-of-WLAN_SUPP_RATES_MAX-to-defs.h.patch} (80%) rename package/network/services/hostapd/patches/{599-wpa_supplicant-fix-warnings.patch => 213-wpa_supplicant-fix-warnings.patch} (100%) rename package/network/services/hostapd/patches/{420-indicate-features.patch => 220-indicate-features.patch} (100%) rename package/network/services/hostapd/patches/{430-hostapd_cli_ifdef.patch => 250-hostapd_cli_ifdef.patch} (100%) rename package/network/services/hostapd/patches/{431-wpa_cli_ifdef.patch => 251-wpa_cli_ifdef.patch} (100%) rename package/network/services/hostapd/patches/{380-disable_ctrl_iface_mib.patch => 252-disable_ctrl_iface_mib.patch} (100%) rename package/network/services/hostapd/patches/{750-qos_map_set_without_interworking.patch => 253-qos_map_set_without_interworking.patch} (94%) diff --git a/package/network/services/hostapd/patches/991-Fix-OpenWrt-13156.patch b/package/network/services/hostapd/patches/050-Fix-OpenWrt-13156.patch similarity index 91% rename from package/network/services/hostapd/patches/991-Fix-OpenWrt-13156.patch rename to package/network/services/hostapd/patches/050-Fix-OpenWrt-13156.patch index 4cd8eaa4d9..a044409d2d 100644 --- a/package/network/services/hostapd/patches/991-Fix-OpenWrt-13156.patch +++ b/package/network/services/hostapd/patches/050-Fix-OpenWrt-13156.patch @@ -20,7 +20,7 @@ Signed-off-by: Stijn Tintel --- a/src/ap/hostapd.c +++ b/src/ap/hostapd.c -@@ -3681,6 +3681,8 @@ int hostapd_remove_iface(struct hapd_int +@@ -3646,6 +3646,8 @@ int hostapd_remove_iface(struct hapd_int void hostapd_new_assoc_sta(struct hostapd_data *hapd, struct sta_info *sta, int reassoc) { @@ -29,7 +29,7 @@ Signed-off-by: Stijn Tintel if (hapd->tkip_countermeasures) { hostapd_drv_sta_deauth(hapd, sta->addr, WLAN_REASON_MICHAEL_MIC_FAILURE); -@@ -3688,10 +3690,16 @@ void hostapd_new_assoc_sta(struct hostap +@@ -3653,10 +3655,16 @@ void hostapd_new_assoc_sta(struct hostap } #ifdef CONFIG_IEEE80211BE @@ -51,7 +51,7 @@ Signed-off-by: Stijn Tintel sta->post_csa_sa_query = 0; --- a/src/ap/sta_info.c +++ b/src/ap/sta_info.c -@@ -1414,9 +1414,6 @@ bool ap_sta_set_authorized_flag(struct h +@@ -1412,9 +1412,6 @@ bool ap_sta_set_authorized_flag(struct h mld_assoc_link_id = -2; } #endif /* CONFIG_IEEE80211BE */ diff --git a/package/network/services/hostapd/patches/992-nl80211-add-extra-ies-only-if-allowed-by-driver.patch b/package/network/services/hostapd/patches/051-nl80211-add-extra-ies-only-if-allowed-by-driver.patch similarity index 98% rename from package/network/services/hostapd/patches/992-nl80211-add-extra-ies-only-if-allowed-by-driver.patch rename to package/network/services/hostapd/patches/051-nl80211-add-extra-ies-only-if-allowed-by-driver.patch index ca17791d84..de4d4ad3c2 100644 --- a/package/network/services/hostapd/patches/992-nl80211-add-extra-ies-only-if-allowed-by-driver.patch +++ b/package/network/services/hostapd/patches/051-nl80211-add-extra-ies-only-if-allowed-by-driver.patch @@ -26,7 +26,7 @@ Signed-off-by: David Bauer --- a/src/drivers/driver.h +++ b/src/drivers/driver.h -@@ -2344,6 +2344,9 @@ struct wpa_driver_capa { +@@ -2340,6 +2340,9 @@ struct wpa_driver_capa { /** Maximum number of iterations in a single scan plan */ u32 max_sched_scan_plan_iterations; diff --git a/package/network/services/hostapd/patches/200-multicall.patch b/package/network/services/hostapd/patches/200-multicall.patch index 65c1e5d838..1a193b51bb 100644 --- a/package/network/services/hostapd/patches/200-multicall.patch +++ b/package/network/services/hostapd/patches/200-multicall.patch @@ -116,7 +116,7 @@ This allows building both hostapd and wpa_supplicant as a single binary struct hapd_interfaces *interfaces = ctx; --- a/src/drivers/driver.h +++ b/src/drivers/driver.h -@@ -6760,8 +6760,8 @@ union wpa_event_data { +@@ -6763,8 +6763,8 @@ union wpa_event_data { * Driver wrapper code should call this function whenever an event is received * from the driver. */ @@ -127,7 +127,7 @@ This allows building both hostapd and wpa_supplicant as a single binary /** * wpa_supplicant_event_global - Report a driver event for wpa_supplicant -@@ -6773,7 +6773,7 @@ void wpa_supplicant_event(void *ctx, enu +@@ -6776,7 +6776,7 @@ void wpa_supplicant_event(void *ctx, enu * Same as wpa_supplicant_event(), but we search for the interface in * wpa_global. */ diff --git a/package/network/services/hostapd/patches/500-lto-jobserver-support.patch b/package/network/services/hostapd/patches/201-lto-jobserver-support.patch similarity index 91% rename from package/network/services/hostapd/patches/500-lto-jobserver-support.patch rename to package/network/services/hostapd/patches/201-lto-jobserver-support.patch index f7f071fb0e..ea0dc29081 100644 --- a/package/network/services/hostapd/patches/500-lto-jobserver-support.patch +++ b/package/network/services/hostapd/patches/201-lto-jobserver-support.patch @@ -5,7 +5,7 @@ Subject: [PATCH] hostapd: build with LTO enabled (using jobserver for parallel --- a/hostapd/Makefile +++ b/hostapd/Makefile -@@ -1408,7 +1408,7 @@ hostapd_multi.a: $(BCHECK) $(OBJS) +@@ -1405,7 +1405,7 @@ hostapd_multi.a: $(BCHECK) $(OBJS) @$(AR) cr $@ hostapd_multi.o $(OBJS) hostapd: $(OBJS) @@ -14,7 +14,7 @@ Subject: [PATCH] hostapd: build with LTO enabled (using jobserver for parallel @$(E) " LD " $@ ifdef CONFIG_WPA_TRACE -@@ -1419,7 +1419,7 @@ _OBJS_VAR := OBJS_c +@@ -1416,7 +1416,7 @@ _OBJS_VAR := OBJS_c include ../src/objs.mk hostapd_cli: $(OBJS_c) @@ -25,7 +25,7 @@ Subject: [PATCH] hostapd: build with LTO enabled (using jobserver for parallel NOBJS = nt_password_hash.o ../src/crypto/ms_funcs.o $(SHA1OBJS) --- a/wpa_supplicant/Makefile +++ b/wpa_supplicant/Makefile -@@ -2106,31 +2106,31 @@ wpa_supplicant_multi.a: .config $(BCHECK +@@ -2103,31 +2103,31 @@ wpa_supplicant_multi.a: .config $(BCHECK @$(AR) cr $@ wpa_supplicant_multi.o $(OBJS) wpa_supplicant: $(BCHECK) $(OBJS) $(EXTRA_progs) diff --git a/package/network/services/hostapd/patches/990-ctrl-make-WNM_AP-functions-dependant-on-CONFIG_AP.patch b/package/network/services/hostapd/patches/211-ctrl-make-WNM_AP-functions-dependant-on-CONFIG_AP.patch similarity index 90% rename from package/network/services/hostapd/patches/990-ctrl-make-WNM_AP-functions-dependant-on-CONFIG_AP.patch rename to package/network/services/hostapd/patches/211-ctrl-make-WNM_AP-functions-dependant-on-CONFIG_AP.patch index b57550ac8b..84fdea8c78 100644 --- a/package/network/services/hostapd/patches/990-ctrl-make-WNM_AP-functions-dependant-on-CONFIG_AP.patch +++ b/package/network/services/hostapd/patches/211-ctrl-make-WNM_AP-functions-dependant-on-CONFIG_AP.patch @@ -13,7 +13,7 @@ Signed-off-by: David Bauer --- a/wpa_supplicant/ctrl_iface.c +++ b/wpa_supplicant/ctrl_iface.c -@@ -13220,7 +13220,7 @@ char * wpa_supplicant_ctrl_iface_process +@@ -13214,7 +13214,7 @@ char * wpa_supplicant_ctrl_iface_process if (wpas_ctrl_iface_coloc_intf_report(wpa_s, buf + 18)) reply_len = -1; #endif /* CONFIG_WNM */ @@ -22,7 +22,7 @@ Signed-off-by: David Bauer } else if (os_strncmp(buf, "DISASSOC_IMMINENT ", 18) == 0) { if (ap_ctrl_iface_disassoc_imminent(wpa_s, buf + 18)) reply_len = -1; -@@ -13230,7 +13230,7 @@ char * wpa_supplicant_ctrl_iface_process +@@ -13224,7 +13224,7 @@ char * wpa_supplicant_ctrl_iface_process } else if (os_strncmp(buf, "BSS_TM_REQ ", 11) == 0) { if (ap_ctrl_iface_bss_tm_req(wpa_s, buf + 11)) reply_len = -1; diff --git a/package/network/services/hostapd/patches/461-Move-definition-of-WLAN_SUPP_RATES_MAX-to-defs.h.patch b/package/network/services/hostapd/patches/212-Move-definition-of-WLAN_SUPP_RATES_MAX-to-defs.h.patch similarity index 80% rename from package/network/services/hostapd/patches/461-Move-definition-of-WLAN_SUPP_RATES_MAX-to-defs.h.patch rename to package/network/services/hostapd/patches/212-Move-definition-of-WLAN_SUPP_RATES_MAX-to-defs.h.patch index daff60a8ad..4c568c924c 100644 --- a/package/network/services/hostapd/patches/461-Move-definition-of-WLAN_SUPP_RATES_MAX-to-defs.h.patch +++ b/package/network/services/hostapd/patches/212-Move-definition-of-WLAN_SUPP_RATES_MAX-to-defs.h.patch @@ -54,23 +54,3 @@ Signed-off-by: Eneas U de Queiroz static inline int wpa_key_mgmt_wpa_ieee8021x(int akm) { return !!(akm & (WPA_KEY_MGMT_IEEE8021X | ---- a/src/drivers/driver.h -+++ b/src/drivers/driver.h -@@ -19,7 +19,6 @@ - - #define WPA_SUPPLICANT_DRIVER_VERSION 4 - --#include "ap/sta_info.h" - #include "common/defs.h" - #include "common/ieee802_11_defs.h" - #include "common/wpa_common.h" ---- a/wpa_supplicant/config_ssid.h -+++ b/wpa_supplicant/config_ssid.h -@@ -10,7 +10,6 @@ - #define CONFIG_SSID_H - - #include "common/defs.h" --#include "ap/sta_info.h" - #include "utils/list.h" - #include "eap_peer/eap_config.h" - #include "drivers/nl80211_copy.h" diff --git a/package/network/services/hostapd/patches/599-wpa_supplicant-fix-warnings.patch b/package/network/services/hostapd/patches/213-wpa_supplicant-fix-warnings.patch similarity index 100% rename from package/network/services/hostapd/patches/599-wpa_supplicant-fix-warnings.patch rename to package/network/services/hostapd/patches/213-wpa_supplicant-fix-warnings.patch diff --git a/package/network/services/hostapd/patches/420-indicate-features.patch b/package/network/services/hostapd/patches/220-indicate-features.patch similarity index 100% rename from package/network/services/hostapd/patches/420-indicate-features.patch rename to package/network/services/hostapd/patches/220-indicate-features.patch diff --git a/package/network/services/hostapd/patches/430-hostapd_cli_ifdef.patch b/package/network/services/hostapd/patches/250-hostapd_cli_ifdef.patch similarity index 100% rename from package/network/services/hostapd/patches/430-hostapd_cli_ifdef.patch rename to package/network/services/hostapd/patches/250-hostapd_cli_ifdef.patch diff --git a/package/network/services/hostapd/patches/431-wpa_cli_ifdef.patch b/package/network/services/hostapd/patches/251-wpa_cli_ifdef.patch similarity index 100% rename from package/network/services/hostapd/patches/431-wpa_cli_ifdef.patch rename to package/network/services/hostapd/patches/251-wpa_cli_ifdef.patch diff --git a/package/network/services/hostapd/patches/380-disable_ctrl_iface_mib.patch b/package/network/services/hostapd/patches/252-disable_ctrl_iface_mib.patch similarity index 100% rename from package/network/services/hostapd/patches/380-disable_ctrl_iface_mib.patch rename to package/network/services/hostapd/patches/252-disable_ctrl_iface_mib.patch diff --git a/package/network/services/hostapd/patches/750-qos_map_set_without_interworking.patch b/package/network/services/hostapd/patches/253-qos_map_set_without_interworking.patch similarity index 94% rename from package/network/services/hostapd/patches/750-qos_map_set_without_interworking.patch rename to package/network/services/hostapd/patches/253-qos_map_set_without_interworking.patch index 23b8dffb57..4072ff5664 100644 --- a/package/network/services/hostapd/patches/750-qos_map_set_without_interworking.patch +++ b/package/network/services/hostapd/patches/253-qos_map_set_without_interworking.patch @@ -24,7 +24,7 @@ This feature is useful on its own even without full interworking support #ifdef CONFIG_HS20 static int hs20_parse_conn_capab(struct hostapd_bss_config *bss, char *buf, -@@ -4282,10 +4282,10 @@ static int hostapd_config_fill(struct ho +@@ -4260,10 +4260,10 @@ static int hostapd_config_fill(struct ho bss->gas_frag_limit = val; } else if (os_strcmp(buf, "gas_comeback_delay") == 0) { bss->gas_comeback_delay = atoi(pos); @@ -38,7 +38,7 @@ This feature is useful on its own even without full interworking support os_free(bss->dump_msk_file); --- a/src/ap/hostapd.c +++ b/src/ap/hostapd.c -@@ -1578,6 +1578,7 @@ int hostapd_setup_bss(struct hostapd_dat +@@ -1548,6 +1548,7 @@ static int hostapd_setup_bss(struct host wpa_printf(MSG_ERROR, "GAS server initialization failed"); return -1; } @@ -46,7 +46,7 @@ This feature is useful on its own even without full interworking support if (conf->qos_map_set_len && hostapd_drv_set_qos_map(hapd, conf->qos_map_set, -@@ -1585,7 +1586,6 @@ int hostapd_setup_bss(struct hostapd_dat +@@ -1555,7 +1556,6 @@ static int hostapd_setup_bss(struct host wpa_printf(MSG_ERROR, "Failed to initialize QoS Map"); return -1; } diff --git a/package/network/services/hostapd/patches/381-hostapd_cli_UNKNOWN-COMMAND.patch b/package/network/services/hostapd/patches/381-hostapd_cli_UNKNOWN-COMMAND.patch index b7d2e2b659..e68edacb44 100644 --- a/package/network/services/hostapd/patches/381-hostapd_cli_UNKNOWN-COMMAND.patch +++ b/package/network/services/hostapd/patches/381-hostapd_cli_UNKNOWN-COMMAND.patch @@ -11,7 +11,7 @@ if CONFIG_CTRL_IFACE_MIB is not defined. --- a/hostapd/hostapd_cli.c +++ b/hostapd/hostapd_cli.c -@@ -757,7 +757,7 @@ static int wpa_ctrl_command_sta(struct w +@@ -753,7 +753,7 @@ static int wpa_ctrl_command_sta(struct w } buf[len] = '\0'; diff --git a/package/network/services/hostapd/patches/460-wpa_supplicant-add-new-config-params-to-be-used-with.patch b/package/network/services/hostapd/patches/460-wpa_supplicant-add-new-config-params-to-be-used-with.patch index db561b8c20..ac1c9280b7 100644 --- a/package/network/services/hostapd/patches/460-wpa_supplicant-add-new-config-params-to-be-used-with.patch +++ b/package/network/services/hostapd/patches/460-wpa_supplicant-add-new-config-params-to-be-used-with.patch @@ -14,15 +14,7 @@ Signed-hostap: Antonio Quartulli --- a/src/drivers/driver.h +++ b/src/drivers/driver.h -@@ -19,6 +19,7 @@ - - #define WPA_SUPPLICANT_DRIVER_VERSION 4 - -+#include "ap/sta_info.h" - #include "common/defs.h" - #include "common/ieee802_11_defs.h" - #include "common/wpa_common.h" -@@ -971,6 +972,9 @@ struct wpa_driver_associate_params { +@@ -971,6 +971,9 @@ struct wpa_driver_associate_params { * responsible for selecting with which BSS to associate. */ const u8 *bssid; @@ -151,18 +143,7 @@ Signed-hostap: Antonio Quartulli { INT_RANGE(macsec_integ_only, 0, 1) }, --- a/wpa_supplicant/config_ssid.h +++ b/wpa_supplicant/config_ssid.h -@@ -10,8 +10,10 @@ - #define CONFIG_SSID_H - - #include "common/defs.h" -+#include "ap/sta_info.h" - #include "utils/list.h" - #include "eap_peer/eap_config.h" -+#include "drivers/nl80211_copy.h" - - - #define DEFAULT_EAP_WORKAROUND ((unsigned int) -1) -@@ -879,6 +881,9 @@ struct wpa_ssid { +@@ -879,6 +879,9 @@ struct wpa_ssid { */ void *parent_cred; diff --git a/package/network/services/hostapd/patches/600-ubus_support.patch b/package/network/services/hostapd/patches/600-ubus_support.patch index a6b03ffd3f..0457f37f74 100644 --- a/package/network/services/hostapd/patches/600-ubus_support.patch +++ b/package/network/services/hostapd/patches/600-ubus_support.patch @@ -314,7 +314,7 @@ probe/assoc/auth requests via object subscribe. ap_free_sta(hapd, sta); break; } -@@ -1451,15 +1453,28 @@ void ap_sta_set_authorized_event(struct +@@ -1448,15 +1450,28 @@ void ap_sta_set_authorized_event(struct os_snprintf(buf, sizeof(buf), MACSTR, MAC2STR(sta->addr)); if (authorized) { @@ -343,7 +343,7 @@ probe/assoc/auth requests via object subscribe. #ifdef CONFIG_P2P if (wpa_auth_get_ip_addr(sta->wpa_sm, ip_addr_buf) == 0) { os_snprintf(ip_addr, sizeof(ip_addr), -@@ -1470,6 +1485,13 @@ void ap_sta_set_authorized_event(struct +@@ -1467,6 +1482,13 @@ void ap_sta_set_authorized_event(struct } #endif /* CONFIG_P2P */ @@ -357,7 +357,7 @@ probe/assoc/auth requests via object subscribe. keyid = ap_sta_wpa_get_keyid(hapd, sta); if (keyid) { os_snprintf(keyid_buf, sizeof(keyid_buf), -@@ -1488,17 +1510,19 @@ void ap_sta_set_authorized_event(struct +@@ -1485,17 +1507,19 @@ void ap_sta_set_authorized_event(struct dpp_pkhash, SHA256_MAC_LEN); } diff --git a/package/network/services/hostapd/patches/601-ucode_support.patch b/package/network/services/hostapd/patches/601-ucode_support.patch index bc50606038..b826363248 100644 --- a/package/network/services/hostapd/patches/601-ucode_support.patch +++ b/package/network/services/hostapd/patches/601-ucode_support.patch @@ -206,7 +206,7 @@ as adding/removing interfaces. void hostapd_interface_deinit_free(struct hostapd_iface *iface); --- a/src/drivers/driver.h +++ b/src/drivers/driver.h -@@ -3853,6 +3853,25 @@ struct wpa_driver_ops { +@@ -3856,6 +3856,25 @@ struct wpa_driver_ops { const char *ifname); /** @@ -232,7 +232,7 @@ as adding/removing interfaces. * set_sta_vlan - Bind a station into a specific interface (AP only) * @priv: Private driver interface data * @ifname: Interface (main or virtual BSS or VLAN) -@@ -6507,6 +6526,7 @@ union wpa_event_data { +@@ -6510,6 +6529,7 @@ union wpa_event_data { /** * struct ch_switch @@ -240,7 +240,7 @@ as adding/removing interfaces. * @freq: Frequency of new channel in MHz * @ht_enabled: Whether this is an HT channel * @ch_offset: Secondary channel offset -@@ -6517,6 +6537,7 @@ union wpa_event_data { +@@ -6520,6 +6540,7 @@ union wpa_event_data { * @punct_bitmap: Puncturing bitmap */ struct ch_switch { @@ -596,7 +596,7 @@ as adding/removing interfaces. CFLAGS += -DEAP_SERVER -DEAP_SERVER_IDENTITY --- a/wpa_supplicant/events.c +++ b/wpa_supplicant/events.c -@@ -5955,6 +5955,7 @@ void supplicant_event(void *ctx, enum wp +@@ -5949,6 +5949,7 @@ void supplicant_event(void *ctx, enum wp event_to_string(event), event); #endif /* CONFIG_NO_STDOUT_DEBUG */ diff --git a/package/network/services/hostapd/patches/740-snoop_iface.patch b/package/network/services/hostapd/patches/740-snoop_iface.patch index 5611096ad8..f4b3ac33b1 100644 --- a/package/network/services/hostapd/patches/740-snoop_iface.patch +++ b/package/network/services/hostapd/patches/740-snoop_iface.patch @@ -112,7 +112,7 @@ untagged DHCP packets hapd->x_snoop_initialized = false; --- a/src/drivers/driver.h +++ b/src/drivers/driver.h -@@ -4275,7 +4275,7 @@ struct wpa_driver_ops { +@@ -4278,7 +4278,7 @@ struct wpa_driver_ops { * Returns: 0 on success, negative (<0) on failure */ int (*br_set_net_param)(void *priv, enum drv_br_net_param param, -- 2.30.2