mirror of
https://github.com/openwrt/openwrt.git
synced 2026-06-17 17:01:44 +04:00
hostapd: update to 2026-04-02
Patches automatically refreshed. Link: https://github.com/openwrt/openwrt/pull/22745 Signed-off-by: Nick Hainke <vincent@systemli.org>
This commit is contained in:
@@ -9,9 +9,9 @@ PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE_URL:=https://w1.fi/hostap.git
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_DATE:=2026-03-23
|
||||
PKG_SOURCE_VERSION:=3f9b7ae0780973446d3feea27b4caf6dbf43f0c6
|
||||
PKG_MIRROR_HASH:=5421a6bfe145559d27930010f1aba7781a483898e6de5462024871388f114661
|
||||
PKG_SOURCE_DATE:=2026-04-02
|
||||
PKG_SOURCE_VERSION:=b004de0bf1b54d669d358b7f33d6f474bd9719a6
|
||||
PKG_MIRROR_HASH:=0b0184e600c994a1f0415f52e8af26b39f13e376a30cdf0b4f3ca1a206e52fc8
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
PKG_LICENSE:=BSD-3-Clause
|
||||
|
||||
+12
-12
@@ -14,7 +14,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
|
||||
--- a/wpa_supplicant/wpa_supplicant.c
|
||||
+++ b/wpa_supplicant/wpa_supplicant.c
|
||||
@@ -3047,7 +3047,7 @@ static int drv_supports_vht(struct wpa_s
|
||||
@@ -3048,7 +3048,7 @@ static int drv_supports_vht(struct wpa_s
|
||||
}
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
{
|
||||
int i;
|
||||
|
||||
@@ -3056,7 +3056,10 @@ static bool ibss_mesh_is_80mhz_avail(int
|
||||
@@ -3057,7 +3057,10 @@ static bool ibss_mesh_is_80mhz_avail(int
|
||||
|
||||
chan = hw_get_channel_chan(mode, i, NULL);
|
||||
if (!chan ||
|
||||
@@ -35,7 +35,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -3183,7 +3186,7 @@ static void ibss_mesh_select_40mhz(struc
|
||||
@@ -3184,7 +3187,7 @@ static void ibss_mesh_select_40mhz(struc
|
||||
const struct wpa_ssid *ssid,
|
||||
struct hostapd_hw_modes *mode,
|
||||
struct hostapd_freq_params *freq,
|
||||
@@ -44,7 +44,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
{
|
||||
int chan_idx;
|
||||
struct hostapd_channel_data *pri_chan = NULL, *sec_chan = NULL;
|
||||
@@ -3214,8 +3217,11 @@ static void ibss_mesh_select_40mhz(struc
|
||||
@@ -3215,8 +3218,11 @@ static void ibss_mesh_select_40mhz(struc
|
||||
return;
|
||||
|
||||
/* Check primary channel flags */
|
||||
@@ -58,7 +58,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
|
||||
#ifdef CONFIG_HT_OVERRIDES
|
||||
if (ssid->disable_ht40)
|
||||
@@ -3250,8 +3256,11 @@ static void ibss_mesh_select_40mhz(struc
|
||||
@@ -3251,8 +3257,11 @@ static void ibss_mesh_select_40mhz(struc
|
||||
return;
|
||||
|
||||
/* Check secondary channel flags */
|
||||
@@ -72,7 +72,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
|
||||
if (freq->ht_enabled) {
|
||||
if (ht40 == -1) {
|
||||
@@ -3329,7 +3338,7 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
@@ -3330,7 +3339,7 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
const struct wpa_ssid *ssid,
|
||||
struct hostapd_hw_modes *mode,
|
||||
struct hostapd_freq_params *freq,
|
||||
@@ -81,7 +81,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
static const int bw80[] = {
|
||||
5180, 5260, 5500, 5580, 5660, 5745, 5825,
|
||||
5955, 6035, 6115, 6195, 6275, 6355, 6435,
|
||||
@@ -3382,7 +3391,7 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
@@ -3383,7 +3392,7 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
goto skip_80mhz;
|
||||
|
||||
/* Use 40 MHz if channel not usable */
|
||||
@@ -90,7 +90,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
goto skip_80mhz;
|
||||
|
||||
chwidth = CONF_OPER_CHWIDTH_80MHZ;
|
||||
@@ -3424,7 +3433,7 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
@@ -3425,7 +3434,7 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
HE_PHYCAP_CHANNEL_WIDTH_SET_160MHZ_IN_5G) &&
|
||||
(ssid->max_oper_chwidth == CONF_OPER_CHWIDTH_160MHZ ||
|
||||
ssid->max_oper_chwidth == CONF_OPER_CHWIDTH_320MHZ) &&
|
||||
@@ -99,7 +99,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
for (j = 0; j < ARRAY_SIZE(bw160); j++) {
|
||||
u8 start_chan;
|
||||
|
||||
@@ -3447,11 +3456,11 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
@@ -3448,11 +3457,11 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
EHT_PHYCAP_320MHZ_IN_6GHZ_SUPPORT_MASK) && is_6ghz &&
|
||||
ssid->max_oper_chwidth == CONF_OPER_CHWIDTH_320MHZ &&
|
||||
ibss_mesh_is_80mhz_avail(channel + 16 -
|
||||
@@ -114,7 +114,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
for (j = 0; j < ARRAY_SIZE(bw320); j += 2) {
|
||||
if (freq->freq >= bw320[j] &&
|
||||
freq->freq <= bw320[j + 1]) {
|
||||
@@ -3480,10 +3489,12 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
@@ -3481,10 +3490,12 @@ static bool ibss_mesh_select_80_160mhz(s
|
||||
if (!chan)
|
||||
continue;
|
||||
|
||||
@@ -131,7 +131,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
|
||||
/* Found a suitable second segment for 80+80 */
|
||||
chwidth = CONF_OPER_CHWIDTH_80P80MHZ;
|
||||
@@ -3538,6 +3549,7 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
@@ -3539,6 +3550,7 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
int obss_scan = 1;
|
||||
u8 channel;
|
||||
bool is_6ghz, is_24ghz;
|
||||
@@ -139,7 +139,7 @@ Signed-off-by: Peter Oh <peter.oh@bowerswilkins.com>
|
||||
|
||||
freq->freq = ssid->frequency;
|
||||
|
||||
@@ -3581,9 +3593,9 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
@@ -3582,9 +3594,9 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
/* Setup higher BW only for 5 and 6 GHz */
|
||||
if (mode->mode == HOSTAPD_MODE_IEEE80211A) {
|
||||
ibss_mesh_select_40mhz(wpa_s, ssid, mode, freq, obss_scan,
|
||||
|
||||
+1
-1
@@ -68,7 +68,7 @@ Signed-off-by: Markus Theil <markus.theil@tu-ilmenau.de>
|
||||
chan_idx, num_available_chandefs);
|
||||
--- a/src/drivers/driver_nl80211.c
|
||||
+++ b/src/drivers/driver_nl80211.c
|
||||
@@ -12010,6 +12010,10 @@ static int nl80211_switch_channel(void *
|
||||
@@ -12012,6 +12012,10 @@ static int nl80211_switch_channel(void *
|
||||
if (ret)
|
||||
goto error;
|
||||
|
||||
|
||||
+2
-2
@@ -4,7 +4,7 @@ Subject: [PATCH] fix adding back stations after a missed deauth/disassoc
|
||||
|
||||
--- a/src/ap/ieee802_11.c
|
||||
+++ b/src/ap/ieee802_11.c
|
||||
@@ -5566,6 +5566,13 @@ static int add_associated_sta(struct hos
|
||||
@@ -6370,6 +6370,13 @@ static int add_associated_sta(struct hos
|
||||
* drivers to accept the STA parameter configuration. Since this is
|
||||
* after a new FT-over-DS exchange, a new TK has been derived, so key
|
||||
* reinstallation is not a concern for this case.
|
||||
@@ -18,7 +18,7 @@ Subject: [PATCH] fix adding back stations after a missed deauth/disassoc
|
||||
*/
|
||||
wpa_printf(MSG_DEBUG, "Add associated STA " MACSTR
|
||||
" (added_unassoc=%d auth_alg=%u ft_over_ds=%u reassoc=%d authorized=%d ft_tk=%d fils_tk=%d)",
|
||||
@@ -5579,7 +5586,8 @@ static int add_associated_sta(struct hos
|
||||
@@ -6383,7 +6390,8 @@ static int add_associated_sta(struct hos
|
||||
(!(sta->flags & WLAN_STA_AUTHORIZED) ||
|
||||
(reassoc && sta->ft_over_ds && sta->auth_alg == WLAN_AUTH_FT) ||
|
||||
(!wpa_auth_sta_ft_tk_already_set(sta->wpa_sm) &&
|
||||
|
||||
@@ -20,7 +20,7 @@ Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
|
||||
|
||||
--- a/src/ap/hostapd.c
|
||||
+++ b/src/ap/hostapd.c
|
||||
@@ -4123,6 +4123,8 @@ int hostapd_remove_iface(struct hapd_int
|
||||
@@ -4126,6 +4126,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 <stijn@linux-ipv6.be>
|
||||
if (hapd->tkip_countermeasures) {
|
||||
hostapd_drv_sta_deauth(hapd, sta->addr,
|
||||
WLAN_REASON_MICHAEL_MIC_FAILURE);
|
||||
@@ -4130,10 +4132,16 @@ void hostapd_new_assoc_sta(struct hostap
|
||||
@@ -4133,10 +4135,16 @@ void hostapd_new_assoc_sta(struct hostap
|
||||
}
|
||||
|
||||
#ifdef CONFIG_IEEE80211BE
|
||||
@@ -51,7 +51,7 @@ Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
|
||||
ap_sta_clear_assoc_timeout(hapd, sta);
|
||||
--- a/src/ap/sta_info.c
|
||||
+++ b/src/ap/sta_info.c
|
||||
@@ -1736,9 +1736,6 @@ bool ap_sta_set_authorized_flag(struct h
|
||||
@@ -1742,9 +1742,6 @@ bool ap_sta_set_authorized_flag(struct h
|
||||
mld_assoc_link_id = -2;
|
||||
}
|
||||
#endif /* CONFIG_IEEE80211BE */
|
||||
|
||||
+3
-3
@@ -26,7 +26,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||
|
||||
--- a/src/drivers/driver.h
|
||||
+++ b/src/drivers/driver.h
|
||||
@@ -2467,6 +2467,9 @@ struct wpa_driver_capa {
|
||||
@@ -2469,6 +2469,9 @@ struct wpa_driver_capa {
|
||||
/** Maximum number of iterations in a single scan plan */
|
||||
u32 max_sched_scan_plan_iterations;
|
||||
|
||||
@@ -38,7 +38,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||
|
||||
--- a/src/drivers/driver_nl80211_capa.c
|
||||
+++ b/src/drivers/driver_nl80211_capa.c
|
||||
@@ -1000,6 +1000,10 @@ static int wiphy_info_handler(struct nl_
|
||||
@@ -1004,6 +1004,10 @@ static int wiphy_info_handler(struct nl_
|
||||
nla_get_u32(tb[NL80211_ATTR_MAX_SCAN_PLAN_ITERATIONS]);
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||
nla_get_u8(tb[NL80211_ATTR_MAX_MATCH_SETS]);
|
||||
--- a/src/drivers/driver_nl80211_scan.c
|
||||
+++ b/src/drivers/driver_nl80211_scan.c
|
||||
@@ -235,7 +235,7 @@ nl80211_scan_common(struct i802_bss *bss
|
||||
@@ -236,7 +236,7 @@ nl80211_scan_common(struct i802_bss *bss
|
||||
wpa_printf(MSG_DEBUG, "nl80211: Passive scan requested");
|
||||
}
|
||||
|
||||
|
||||
+19
-19
@@ -21,7 +21,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
--- a/hostapd/Makefile
|
||||
+++ b/hostapd/Makefile
|
||||
@@ -769,6 +769,40 @@ endif
|
||||
@@ -774,6 +774,40 @@ endif
|
||||
CFLAGS += -DTLS_DEFAULT_CIPHERS=\"$(CONFIG_TLS_DEFAULT_CIPHERS)\"
|
||||
endif
|
||||
|
||||
@@ -62,7 +62,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifeq ($(CONFIG_TLS), gnutls)
|
||||
ifndef CONFIG_CRYPTO
|
||||
# default to libgcrypt
|
||||
@@ -948,9 +982,11 @@ endif
|
||||
@@ -953,9 +987,11 @@ endif
|
||||
|
||||
ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -74,7 +74,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef NEED_AES_EAX
|
||||
AESOBJS += ../src/crypto/aes-eax.o
|
||||
NEED_AES_CTR=y
|
||||
@@ -960,38 +996,48 @@ AESOBJS += ../src/crypto/aes-siv.o
|
||||
@@ -965,38 +1001,48 @@ AESOBJS += ../src/crypto/aes-siv.o
|
||||
NEED_AES_CTR=y
|
||||
endif
|
||||
ifdef NEED_AES_CTR
|
||||
@@ -123,7 +123,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef NEED_AES_DEC
|
||||
ifdef CONFIG_INTERNAL_AES
|
||||
AESOBJS += ../src/crypto/aes-internal-dec.o
|
||||
@@ -1006,12 +1052,16 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
@@ -1011,12 +1057,16 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), linux)
|
||||
ifneq ($(CONFIG_TLS), gnutls)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -140,7 +140,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef CONFIG_INTERNAL_SHA1
|
||||
SHA1OBJS += ../src/crypto/sha1-internal.o
|
||||
ifdef NEED_FIPS186_2_PRF
|
||||
@@ -1020,16 +1070,22 @@ endif
|
||||
@@ -1025,16 +1075,22 @@ endif
|
||||
endif
|
||||
ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -163,7 +163,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
ifdef NEED_SHA1
|
||||
OBJS += $(SHA1OBJS)
|
||||
@@ -1039,11 +1095,13 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
@@ -1044,11 +1100,13 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), linux)
|
||||
ifneq ($(CONFIG_TLS), gnutls)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -177,7 +177,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
ifdef NEED_MD5
|
||||
ifdef CONFIG_INTERNAL_MD5
|
||||
@@ -1096,56 +1154,81 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
@@ -1101,56 +1159,81 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), linux)
|
||||
ifneq ($(CONFIG_TLS), gnutls)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -259,7 +259,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
ifdef CONFIG_INTERNAL_SHA384
|
||||
CFLAGS += -DCONFIG_INTERNAL_SHA384
|
||||
@@ -1190,11 +1273,13 @@ HOBJS += $(SHA1OBJS)
|
||||
@@ -1195,11 +1278,13 @@ HOBJS += $(SHA1OBJS)
|
||||
ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), linux)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -273,7 +273,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
ifdef CONFIG_RADIUS_SERVER
|
||||
CFLAGS += -DRADIUS_SERVER
|
||||
@@ -1374,7 +1459,9 @@ NOBJS += ../src/utils/trace.o
|
||||
@@ -1379,7 +1464,9 @@ NOBJS += ../src/utils/trace.o
|
||||
endif
|
||||
|
||||
HOBJS += hlr_auc_gw.o ../src/utils/common.o ../src/utils/wpa_debug.o ../src/utils/os_$(CONFIG_OS).o ../src/utils/wpabuf.o ../src/crypto/milenage.o
|
||||
@@ -283,7 +283,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef CONFIG_INTERNAL_AES
|
||||
HOBJS += ../src/crypto/aes-internal.o
|
||||
HOBJS += ../src/crypto/aes-internal-enc.o
|
||||
@@ -1397,18 +1484,24 @@ SOBJS += ../src/common/sae.o
|
||||
@@ -1402,18 +1489,24 @@ SOBJS += ../src/common/sae.o
|
||||
SOBJS += ../src/common/sae_pk.o
|
||||
SOBJS += ../src/common/dragonfly.o
|
||||
SOBJS += $(AESOBJS)
|
||||
@@ -7770,7 +7770,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
CONFIG_SIM_SIMULATOR=y
|
||||
--- a/wpa_supplicant/Makefile
|
||||
+++ b/wpa_supplicant/Makefile
|
||||
@@ -1266,6 +1266,29 @@ endif
|
||||
@@ -1271,6 +1271,29 @@ endif
|
||||
CFLAGS += -DTLS_DEFAULT_CIPHERS=\"$(CONFIG_TLS_DEFAULT_CIPHERS)\"
|
||||
endif
|
||||
|
||||
@@ -7800,7 +7800,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifeq ($(CONFIG_TLS), gnutls)
|
||||
ifndef CONFIG_CRYPTO
|
||||
# default to libgcrypt
|
||||
@@ -1458,9 +1481,11 @@ endif
|
||||
@@ -1463,9 +1486,11 @@ endif
|
||||
|
||||
ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -7812,7 +7812,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef CONFIG_OPENSSL_INTERNAL_AES_WRAP
|
||||
# Seems to be needed at least with BoringSSL
|
||||
NEED_INTERNAL_AES_WRAP=y
|
||||
@@ -1474,9 +1499,11 @@ endif
|
||||
@@ -1479,9 +1504,11 @@ endif
|
||||
|
||||
ifdef NEED_INTERNAL_AES_WRAP
|
||||
ifneq ($(CONFIG_TLS), linux)
|
||||
@@ -7824,7 +7824,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef NEED_AES_EAX
|
||||
AESOBJS += ../src/crypto/aes-eax.o
|
||||
NEED_AES_CTR=y
|
||||
@@ -1486,35 +1513,45 @@ AESOBJS += ../src/crypto/aes-siv.o
|
||||
@@ -1491,35 +1518,45 @@ AESOBJS += ../src/crypto/aes-siv.o
|
||||
NEED_AES_CTR=y
|
||||
endif
|
||||
ifdef NEED_AES_CTR
|
||||
@@ -7870,7 +7870,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef NEED_AES_ENC
|
||||
ifdef CONFIG_INTERNAL_AES
|
||||
AESOBJS += ../src/crypto/aes-internal-enc.o
|
||||
@@ -1529,12 +1566,16 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
@@ -1534,12 +1571,16 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), linux)
|
||||
ifneq ($(CONFIG_TLS), gnutls)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -7887,7 +7887,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef CONFIG_INTERNAL_SHA1
|
||||
SHA1OBJS += ../src/crypto/sha1-internal.o
|
||||
ifdef NEED_FIPS186_2_PRF
|
||||
@@ -1546,29 +1587,37 @@ CFLAGS += -DCONFIG_NO_PBKDF2
|
||||
@@ -1551,29 +1592,37 @@ CFLAGS += -DCONFIG_NO_PBKDF2
|
||||
else
|
||||
ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -7925,7 +7925,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef NEED_MD5
|
||||
ifdef CONFIG_INTERNAL_MD5
|
||||
MD5OBJS += ../src/crypto/md5-internal.o
|
||||
@@ -1623,12 +1672,17 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
@@ -1628,12 +1677,17 @@ ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), linux)
|
||||
ifneq ($(CONFIG_TLS), gnutls)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -7943,7 +7943,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifdef CONFIG_INTERNAL_SHA256
|
||||
SHA256OBJS += ../src/crypto/sha256-internal.o
|
||||
endif
|
||||
@@ -1641,50 +1695,68 @@ CFLAGS += -DCONFIG_INTERNAL_SHA512
|
||||
@@ -1646,50 +1700,68 @@ CFLAGS += -DCONFIG_INTERNAL_SHA512
|
||||
SHA256OBJS += ../src/crypto/sha512-internal.o
|
||||
endif
|
||||
ifdef NEED_TLS_PRF_SHA256
|
||||
@@ -8012,7 +8012,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
ifdef NEED_ASN1
|
||||
OBJS += ../src/tls/asn1.o
|
||||
@@ -1859,10 +1931,12 @@ ifdef CONFIG_FIPS
|
||||
@@ -1864,10 +1936,12 @@ ifdef CONFIG_FIPS
|
||||
CFLAGS += -DCONFIG_FIPS
|
||||
ifneq ($(CONFIG_TLS), openssl)
|
||||
ifneq ($(CONFIG_TLS), wolfssl)
|
||||
|
||||
@@ -12,7 +12,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
--- a/hostapd/Makefile
|
||||
+++ b/hostapd/Makefile
|
||||
@@ -783,10 +783,6 @@ endif
|
||||
@@ -788,10 +788,6 @@ endif
|
||||
OBJS += ../src/crypto/crypto_$(CONFIG_CRYPTO).o
|
||||
HOBJS += ../src/crypto/crypto_$(CONFIG_CRYPTO).o
|
||||
SOBJS += ../src/crypto/crypto_$(CONFIG_CRYPTO).o
|
||||
@@ -101,7 +101,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
--- a/wpa_supplicant/Makefile
|
||||
+++ b/wpa_supplicant/Makefile
|
||||
@@ -1277,10 +1277,6 @@ endif
|
||||
@@ -1282,10 +1282,6 @@ endif
|
||||
OBJS += ../src/crypto/crypto_$(CONFIG_CRYPTO).o
|
||||
OBJS_p += ../src/crypto/crypto_$(CONFIG_CRYPTO).o
|
||||
OBJS_priv += ../src/crypto/crypto_$(CONFIG_CRYPTO).o
|
||||
|
||||
+13
-13
@@ -61,7 +61,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
--- a/hostapd/Makefile
|
||||
+++ b/hostapd/Makefile
|
||||
@@ -719,6 +719,7 @@ CFLAGS += -DCONFIG_TLSV12
|
||||
@@ -724,6 +724,7 @@ CFLAGS += -DCONFIG_TLSV12
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -69,7 +69,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
CFLAGS += -DCRYPTO_RSA_OAEP_SHA256
|
||||
CONFIG_CRYPTO=wolfssl
|
||||
ifdef TLS_FUNCS
|
||||
@@ -740,6 +741,7 @@ endif
|
||||
@@ -745,6 +746,7 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), openssl)
|
||||
@@ -77,7 +77,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
CFLAGS += -DCRYPTO_RSA_OAEP_SHA256
|
||||
CONFIG_CRYPTO=openssl
|
||||
ifdef TLS_FUNCS
|
||||
@@ -770,6 +772,7 @@ CFLAGS += -DTLS_DEFAULT_CIPHERS=\"$(CONF
|
||||
@@ -775,6 +777,7 @@ CFLAGS += -DTLS_DEFAULT_CIPHERS=\"$(CONF
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), mbedtls)
|
||||
@@ -85,7 +85,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifndef CONFIG_CRYPTO
|
||||
CONFIG_CRYPTO=mbedtls
|
||||
endif
|
||||
@@ -800,6 +803,7 @@ endif
|
||||
@@ -805,6 +808,7 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), gnutls)
|
||||
@@ -93,7 +93,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifndef CONFIG_CRYPTO
|
||||
# default to libgcrypt
|
||||
CONFIG_CRYPTO=gnutls
|
||||
@@ -830,6 +834,7 @@ endif
|
||||
@@ -835,6 +839,7 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), internal)
|
||||
@@ -101,7 +101,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifndef CONFIG_CRYPTO
|
||||
CONFIG_CRYPTO=internal
|
||||
endif
|
||||
@@ -908,6 +913,7 @@ endif
|
||||
@@ -913,6 +918,7 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), linux)
|
||||
@@ -935,7 +935,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
|
||||
--- a/tests/hwsim/test_ap_ft.py
|
||||
+++ b/tests/hwsim/test_ap_ft.py
|
||||
@@ -2543,11 +2543,11 @@ def test_ap_ft_ap_oom5(dev, apdev):
|
||||
@@ -2575,11 +2575,11 @@ def test_ap_ft_ap_oom5(dev, apdev):
|
||||
# This will fail to roam
|
||||
dev[0].roam(bssid1, check_bssid=False)
|
||||
|
||||
@@ -1289,7 +1289,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
if (need_more_data) {
|
||||
--- a/wpa_supplicant/Makefile
|
||||
+++ b/wpa_supplicant/Makefile
|
||||
@@ -1224,6 +1224,7 @@ TLS_FUNCS=y
|
||||
@@ -1229,6 +1229,7 @@ TLS_FUNCS=y
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), wolfssl)
|
||||
@@ -1297,7 +1297,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
CFLAGS += -DCRYPTO_RSA_OAEP_SHA256
|
||||
ifdef TLS_FUNCS
|
||||
CFLAGS += -DWOLFSSL_DER_LOAD
|
||||
@@ -1240,6 +1241,7 @@ LIBS_p += -lwolfssl -lm
|
||||
@@ -1245,6 +1246,7 @@ LIBS_p += -lwolfssl -lm
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), openssl)
|
||||
@@ -1305,7 +1305,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
CFLAGS += -DCRYPTO_RSA_OAEP_SHA256
|
||||
ifdef TLS_FUNCS
|
||||
CFLAGS += -DEAP_TLS_OPENSSL
|
||||
@@ -1267,6 +1269,7 @@ CFLAGS += -DTLS_DEFAULT_CIPHERS=\"$(CONF
|
||||
@@ -1272,6 +1274,7 @@ CFLAGS += -DTLS_DEFAULT_CIPHERS=\"$(CONF
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), mbedtls)
|
||||
@@ -1313,7 +1313,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifndef CONFIG_CRYPTO
|
||||
CONFIG_CRYPTO=mbedtls
|
||||
endif
|
||||
@@ -1286,6 +1289,7 @@ endif
|
||||
@@ -1291,6 +1294,7 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), gnutls)
|
||||
@@ -1321,7 +1321,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifndef CONFIG_CRYPTO
|
||||
# default to libgcrypt
|
||||
CONFIG_CRYPTO=gnutls
|
||||
@@ -1316,6 +1320,7 @@ endif
|
||||
@@ -1321,6 +1325,7 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), internal)
|
||||
@@ -1329,7 +1329,7 @@ Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
|
||||
ifndef CONFIG_CRYPTO
|
||||
CONFIG_CRYPTO=internal
|
||||
endif
|
||||
@@ -1396,6 +1401,7 @@ endif
|
||||
@@ -1401,6 +1406,7 @@ endif
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_TLS), linux)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/src/ap/hostapd.c
|
||||
+++ b/src/ap/hostapd.c
|
||||
@@ -2473,7 +2473,11 @@ static int hostapd_owe_iface_iter(struct
|
||||
@@ -2476,7 +2476,11 @@ static int hostapd_owe_iface_iter(struct
|
||||
if (!bss->conf->ssid.ssid_set || !bss->conf->ssid.ssid_len ||
|
||||
is_zero_ether_addr(bss->own_addr))
|
||||
continue;
|
||||
@@ -13,7 +13,7 @@
|
||||
os_memcpy(hapd->conf->owe_transition_bssid, bss->own_addr,
|
||||
ETH_ALEN);
|
||||
os_memcpy(hapd->conf->owe_transition_ssid,
|
||||
@@ -2490,10 +2494,6 @@ static int hostapd_owe_iface_iter(struct
|
||||
@@ -2493,10 +2497,6 @@ static int hostapd_owe_iface_iter(struct
|
||||
|
||||
int hostapd_owe_trans_get_info(struct hostapd_data *hapd)
|
||||
{
|
||||
|
||||
+1
-1
@@ -43,7 +43,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
* If set indicate the AP as disabled in the RNR element included in the
|
||||
--- a/src/ap/hostapd.c
|
||||
+++ b/src/ap/hostapd.c
|
||||
@@ -3116,7 +3116,10 @@ struct hostapd_iface * hostapd_alloc_ifa
|
||||
@@ -3119,7 +3119,10 @@ struct hostapd_iface * hostapd_alloc_ifa
|
||||
#ifdef CONFIG_IEEE80211BE
|
||||
static void hostapd_bss_alloc_link_id(struct hostapd_data *hapd)
|
||||
{
|
||||
|
||||
@@ -43,7 +43,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
LIBS += $(DRV_AP_LIBS)
|
||||
|
||||
ifdef CONFIG_L2_PACKET
|
||||
@@ -1425,6 +1431,12 @@ install: $(addprefix $(DESTDIR)$(BINDIR)
|
||||
@@ -1430,6 +1436,12 @@ install: $(addprefix $(DESTDIR)$(BINDIR)
|
||||
_OBJS_VAR := OBJS
|
||||
include ../src/objs.mk
|
||||
|
||||
@@ -56,7 +56,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
hostapd: $(OBJS)
|
||||
$(Q)$(CC) $(LDFLAGS) -o hostapd $(OBJS) $(LIBS)
|
||||
@$(E) " LD " $@
|
||||
@@ -1513,6 +1525,12 @@ include ../src/objs.mk
|
||||
@@ -1518,6 +1530,12 @@ include ../src/objs.mk
|
||||
_OBJS_VAR := SOBJS
|
||||
include ../src/objs.mk
|
||||
|
||||
@@ -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
|
||||
@@ -7309,8 +7309,8 @@ union wpa_event_data {
|
||||
@@ -7313,8 +7313,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
|
||||
@@ -7322,7 +7322,7 @@ void wpa_supplicant_event(void *ctx, enu
|
||||
@@ -7326,7 +7326,7 @@ void wpa_supplicant_event(void *ctx, enu
|
||||
* Same as wpa_supplicant_event(), but we search for the interface in
|
||||
* wpa_global.
|
||||
*/
|
||||
@@ -169,7 +169,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
OBJS += ibss_rsn.o
|
||||
endif
|
||||
|
||||
@@ -1015,6 +1018,10 @@ ifdef CONFIG_DYNAMIC_EAP_METHODS
|
||||
@@ -1020,6 +1023,10 @@ ifdef CONFIG_DYNAMIC_EAP_METHODS
|
||||
CFLAGS += -DCONFIG_DYNAMIC_EAP_METHODS
|
||||
LIBS += -ldl -rdynamic
|
||||
endif
|
||||
@@ -180,7 +180,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
endif
|
||||
|
||||
ifdef CONFIG_AP
|
||||
@@ -1022,9 +1029,11 @@ NEED_EAP_COMMON=y
|
||||
@@ -1027,9 +1034,11 @@ NEED_EAP_COMMON=y
|
||||
NEED_RSN_AUTHENTICATOR=y
|
||||
CFLAGS += -DCONFIG_AP
|
||||
OBJS += ap.o
|
||||
@@ -192,7 +192,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
OBJS += ../src/ap/hostapd.o
|
||||
OBJS += ../src/ap/wpa_auth_glue.o
|
||||
OBJS += ../src/ap/utils.o
|
||||
@@ -1116,6 +1125,12 @@ endif
|
||||
@@ -1121,6 +1130,12 @@ endif
|
||||
ifdef CONFIG_HS20
|
||||
OBJS += ../src/ap/hs20.o
|
||||
endif
|
||||
@@ -205,7 +205,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
endif
|
||||
|
||||
ifdef CONFIG_MBO
|
||||
@@ -1125,7 +1140,9 @@ NEED_GAS=y
|
||||
@@ -1130,7 +1145,9 @@ NEED_GAS=y
|
||||
endif
|
||||
|
||||
ifdef NEED_RSN_AUTHENTICATOR
|
||||
@@ -215,7 +215,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
NEED_AES_WRAP=y
|
||||
OBJS += ../src/ap/wpa_auth.o
|
||||
OBJS += ../src/ap/wpa_auth_ie.o
|
||||
@@ -2125,6 +2142,12 @@ wpa_priv: $(BCHECK) $(OBJS_priv)
|
||||
@@ -2130,6 +2147,12 @@ wpa_priv: $(BCHECK) $(OBJS_priv)
|
||||
|
||||
_OBJS_VAR := OBJS
|
||||
include ../src/objs.mk
|
||||
@@ -228,7 +228,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
wpa_supplicant: $(BCHECK) $(OBJS) $(EXTRA_progs)
|
||||
$(Q)$(LDO) $(LDFLAGS) -o wpa_supplicant $(OBJS) $(LIBS) $(EXTRALIBS)
|
||||
@$(E) " LD " $@
|
||||
@@ -2257,6 +2280,12 @@ eap_gpsk.so: $(SRC_EAP_GPSK)
|
||||
@@ -2262,6 +2285,12 @@ eap_gpsk.so: $(SRC_EAP_GPSK)
|
||||
$(Q)sed -e 's|\@BINDIR\@|$(BINDIR)|g' $< >$@
|
||||
@$(E) " sed" $<
|
||||
|
||||
@@ -278,7 +278,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
os_memset(&eapol_test, 0, sizeof(eapol_test));
|
||||
--- a/wpa_supplicant/events.c
|
||||
+++ b/wpa_supplicant/events.c
|
||||
@@ -6618,8 +6618,8 @@ static int wpas_pasn_auth(struct wpa_sup
|
||||
@@ -6627,8 +6627,8 @@ static int wpas_pasn_auth(struct wpa_sup
|
||||
#endif /* CONFIG_PASN */
|
||||
|
||||
|
||||
@@ -289,7 +289,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
{
|
||||
struct wpa_supplicant *wpa_s = ctx;
|
||||
int resched;
|
||||
@@ -7613,7 +7613,7 @@ void wpa_supplicant_event(void *ctx, enu
|
||||
@@ -7622,7 +7622,7 @@ void wpa_supplicant_event(void *ctx, enu
|
||||
}
|
||||
|
||||
|
||||
@@ -331,7 +331,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
os_memset(&global, 0, sizeof(global));
|
||||
--- a/wpa_supplicant/wpa_supplicant.c
|
||||
+++ b/wpa_supplicant/wpa_supplicant.c
|
||||
@@ -8253,7 +8253,6 @@ struct wpa_interface * wpa_supplicant_ma
|
||||
@@ -8259,7 +8259,6 @@ struct wpa_interface * wpa_supplicant_ma
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -339,7 +339,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
/**
|
||||
* wpa_supplicant_match_existing - Match existing interfaces
|
||||
* @global: Pointer to global data from wpa_supplicant_init()
|
||||
@@ -8288,6 +8287,11 @@ static int wpa_supplicant_match_existing
|
||||
@@ -8294,6 +8293,11 @@ static int wpa_supplicant_match_existing
|
||||
|
||||
#endif /* CONFIG_MATCH_IFACE */
|
||||
|
||||
@@ -351,7 +351,7 @@ This allows building both hostapd and wpa_supplicant as a single binary
|
||||
|
||||
/**
|
||||
* wpa_supplicant_add_iface - Add a new network interface
|
||||
@@ -8544,6 +8548,8 @@ struct wpa_global * wpa_supplicant_init(
|
||||
@@ -8550,6 +8554,8 @@ struct wpa_global * wpa_supplicant_init(
|
||||
#ifndef CONFIG_NO_WPA_MSG
|
||||
wpa_msg_register_ifname_cb(wpa_supplicant_msg_ifname_cb);
|
||||
#endif /* CONFIG_NO_WPA_MSG */
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] hostapd: build with LTO enabled (using jobserver for parallel
|
||||
|
||||
--- a/hostapd/Makefile
|
||||
+++ b/hostapd/Makefile
|
||||
@@ -1438,7 +1438,7 @@ hostapd_multi.a: $(BCHECK) $(OBJS)
|
||||
@@ -1443,7 +1443,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
|
||||
@@ -1449,7 +1449,7 @@ _OBJS_VAR := OBJS_c
|
||||
@@ -1454,7 +1454,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
|
||||
@@ -2149,31 +2149,31 @@ wpa_supplicant_multi.a: .config $(BCHECK
|
||||
@@ -2154,31 +2154,31 @@ wpa_supplicant_multi.a: .config $(BCHECK
|
||||
@$(AR) cr $@ wpa_supplicant_multi.o $(OBJS)
|
||||
|
||||
wpa_supplicant: $(BCHECK) $(OBJS) $(EXTRA_progs)
|
||||
|
||||
+2
-2
@@ -13,7 +13,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||
|
||||
--- a/wpa_supplicant/ctrl_iface.c
|
||||
+++ b/wpa_supplicant/ctrl_iface.c
|
||||
@@ -13989,7 +13989,7 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
@@ -14007,7 +14007,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 <mail@david-bauer.net>
|
||||
} else if (os_strncmp(buf, "DISASSOC_IMMINENT ", 18) == 0) {
|
||||
if (ap_ctrl_iface_disassoc_imminent(wpa_s, buf + 18))
|
||||
reply_len = -1;
|
||||
@@ -13999,7 +13999,7 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
@@ -14017,7 +14017,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;
|
||||
|
||||
@@ -113,7 +113,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
if (os_snprintf_error(buflen - len, ret))
|
||||
--- a/src/ap/ieee802_1x.c
|
||||
+++ b/src/ap/ieee802_1x.c
|
||||
@@ -2836,6 +2836,7 @@ static const char * bool_txt(bool val)
|
||||
@@ -2863,6 +2863,7 @@ static const char * bool_txt(bool val)
|
||||
return val ? "TRUE" : "FALSE";
|
||||
}
|
||||
|
||||
@@ -121,7 +121,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
|
||||
int ieee802_1x_get_mib(struct hostapd_data *hapd, char *buf, size_t buflen)
|
||||
{
|
||||
@@ -3022,6 +3023,7 @@ int ieee802_1x_get_mib_sta(struct hostap
|
||||
@@ -3049,6 +3050,7 @@ int ieee802_1x_get_mib_sta(struct hostap
|
||||
return len;
|
||||
}
|
||||
|
||||
@@ -131,7 +131,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
static void ieee802_1x_wnm_notif_send(void *eloop_ctx, void *timeout_ctx)
|
||||
--- a/src/ap/wpa_auth.c
|
||||
+++ b/src/ap/wpa_auth.c
|
||||
@@ -6526,6 +6526,7 @@ static const char * wpa_bool_txt(int val
|
||||
@@ -6544,6 +6544,7 @@ static const char * wpa_bool_txt(int val
|
||||
return val ? "TRUE" : "FALSE";
|
||||
}
|
||||
|
||||
@@ -139,7 +139,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
|
||||
#define RSN_SUITE "%02x-%02x-%02x-%d"
|
||||
#define RSN_SUITE_ARG(s) \
|
||||
@@ -6678,7 +6679,7 @@ int wpa_get_mib_sta(struct wpa_state_mac
|
||||
@@ -6696,7 +6697,7 @@ int wpa_get_mib_sta(struct wpa_state_mac
|
||||
|
||||
return len;
|
||||
}
|
||||
@@ -150,7 +150,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
{
|
||||
--- a/src/rsn_supp/wpa.c
|
||||
+++ b/src/rsn_supp/wpa.c
|
||||
@@ -4253,6 +4253,8 @@ static u32 wpa_key_mgmt_suite(struct wpa
|
||||
@@ -4272,6 +4272,8 @@ static u32 wpa_key_mgmt_suite(struct wpa
|
||||
}
|
||||
|
||||
|
||||
@@ -159,7 +159,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
#define RSN_SUITE "%02x-%02x-%02x-%d"
|
||||
#define RSN_SUITE_ARG(s) \
|
||||
((s) >> 24) & 0xff, ((s) >> 16) & 0xff, ((s) >> 8) & 0xff, (s) & 0xff
|
||||
@@ -4334,6 +4336,7 @@ int wpa_sm_get_mib(struct wpa_sm *sm, ch
|
||||
@@ -4353,6 +4355,7 @@ int wpa_sm_get_mib(struct wpa_sm *sm, ch
|
||||
|
||||
return (int) len;
|
||||
}
|
||||
@@ -169,7 +169,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
|
||||
--- a/wpa_supplicant/Makefile
|
||||
+++ b/wpa_supplicant/Makefile
|
||||
@@ -1073,6 +1073,9 @@ ifdef CONFIG_FILS
|
||||
@@ -1078,6 +1078,9 @@ ifdef CONFIG_FILS
|
||||
OBJS += ../src/ap/fils_hlp.o
|
||||
endif
|
||||
ifdef CONFIG_CTRL_IFACE
|
||||
@@ -201,7 +201,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
if (wpa_s->ap_iface) {
|
||||
pos += ap_ctrl_iface_wpa_get_status(wpa_s, pos,
|
||||
end - pos,
|
||||
@@ -13318,6 +13318,7 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
@@ -13336,6 +13336,7 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
} else if (os_strncmp(buf, "NOTE ", 5) == 0) {
|
||||
wpa_printf(MSG_INFO, "NOTE: %s", buf + 5);
|
||||
wpa_trace_set_context(buf + 5);
|
||||
@@ -209,7 +209,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
} else if (os_strcmp(buf, "MIB") == 0) {
|
||||
reply_len = wpa_sm_get_mib(wpa_s->wpa, reply, reply_size);
|
||||
if (reply_len >= 0) {
|
||||
@@ -13330,6 +13331,7 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
@@ -13348,6 +13349,7 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
reply_size - reply_len);
|
||||
#endif /* CONFIG_MACSEC */
|
||||
}
|
||||
@@ -217,7 +217,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
} else if (os_strncmp(buf, "STATUS", 6) == 0) {
|
||||
reply_len = wpa_supplicant_ctrl_iface_status(
|
||||
wpa_s, buf + 6, reply, reply_size);
|
||||
@@ -13817,6 +13819,7 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
@@ -13835,6 +13837,7 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
reply_len = wpa_supplicant_ctrl_iface_bss(
|
||||
wpa_s, buf + 4, reply, reply_size);
|
||||
#ifdef CONFIG_AP
|
||||
@@ -225,7 +225,7 @@ Subject: [PATCH] Remove some unnecessary control interface functionality
|
||||
} else if (os_strcmp(buf, "STA-FIRST") == 0) {
|
||||
reply_len = ap_ctrl_iface_sta_first(wpa_s, reply, reply_size);
|
||||
} else if (os_strncmp(buf, "STA ", 4) == 0) {
|
||||
@@ -13825,12 +13828,15 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
@@ -13843,12 +13846,15 @@ char * wpa_supplicant_ctrl_iface_process
|
||||
} else if (os_strncmp(buf, "STA-NEXT ", 9) == 0) {
|
||||
reply_len = ap_ctrl_iface_sta_next(wpa_s, buf + 9, reply,
|
||||
reply_size);
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Allow HT40 also on 2.4GHz if noscan option is set, which also
|
||||
|
||||
--- a/wpa_supplicant/config.c
|
||||
+++ b/wpa_supplicant/config.c
|
||||
@@ -2718,6 +2718,7 @@ static const struct parse_data ssid_fiel
|
||||
@@ -2795,6 +2795,7 @@ static const struct parse_data ssid_fiel
|
||||
#else /* CONFIG_MESH */
|
||||
{ INT_RANGE(mode, 0, 4) },
|
||||
#endif /* CONFIG_MESH */
|
||||
@@ -47,7 +47,7 @@ Subject: [PATCH] Allow HT40 also on 2.4GHz if noscan option is set, which also
|
||||
/*
|
||||
--- a/wpa_supplicant/wpa_supplicant.c
|
||||
+++ b/wpa_supplicant/wpa_supplicant.c
|
||||
@@ -3119,7 +3119,7 @@ static bool ibss_mesh_can_use_vht(struct
|
||||
@@ -3120,7 +3120,7 @@ static bool ibss_mesh_can_use_vht(struct
|
||||
const struct wpa_ssid *ssid,
|
||||
struct hostapd_hw_modes *mode)
|
||||
{
|
||||
@@ -56,7 +56,7 @@ Subject: [PATCH] Allow HT40 also on 2.4GHz if noscan option is set, which also
|
||||
return false;
|
||||
|
||||
if (!drv_supports_vht(wpa_s, ssid))
|
||||
@@ -3193,7 +3193,7 @@ static void ibss_mesh_select_40mhz(struc
|
||||
@@ -3194,7 +3194,7 @@ static void ibss_mesh_select_40mhz(struc
|
||||
int i, res;
|
||||
unsigned int j;
|
||||
static const int ht40plus_5ghz[] = {
|
||||
@@ -65,7 +65,7 @@ Subject: [PATCH] Allow HT40 also on 2.4GHz if noscan option is set, which also
|
||||
149, 157, 165, 173, 184, 192
|
||||
};
|
||||
static const int ht40plus_6ghz[] = {
|
||||
@@ -3546,7 +3546,7 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
@@ -3547,7 +3547,7 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
int ieee80211_mode = wpas_mode_to_ieee80211_mode(ssid->mode);
|
||||
enum hostapd_hw_mode hw_mode;
|
||||
struct hostapd_hw_modes *mode = NULL;
|
||||
@@ -74,7 +74,7 @@ Subject: [PATCH] Allow HT40 also on 2.4GHz if noscan option is set, which also
|
||||
u8 channel;
|
||||
bool is_6ghz, is_24ghz;
|
||||
bool dfs_enabled = wpa_s->conf->country[0] && (wpa_s->drv_flags & WPA_DRIVER_FLAGS_RADAR);
|
||||
@@ -3590,6 +3590,8 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
@@ -3591,6 +3591,8 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
freq->he_enabled = ibss_mesh_can_use_he(wpa_s, ssid, mode,
|
||||
ieee80211_mode);
|
||||
freq->channel = channel;
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] rescan_immediately.patch
|
||||
|
||||
--- a/wpa_supplicant/wpa_supplicant.c
|
||||
+++ b/wpa_supplicant/wpa_supplicant.c
|
||||
@@ -6480,7 +6480,7 @@ wpa_supplicant_alloc(struct wpa_supplica
|
||||
@@ -6481,7 +6481,7 @@ wpa_supplicant_alloc(struct wpa_supplica
|
||||
if (wpa_s == NULL)
|
||||
return NULL;
|
||||
wpa_s->scan_req = INITIAL_SCAN_REQ;
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
if (drv->capa.flags2 & WPA_DRIVER_FLAGS2_CONTROL_PORT_TX_STATUS) {
|
||||
drv->control_port_ap = 1;
|
||||
goto skip_wifi_status;
|
||||
@@ -6529,7 +6549,7 @@ const char * nl80211_iftype_str(enum nl8
|
||||
@@ -6531,7 +6551,7 @@ const char * nl80211_iftype_str(enum nl8
|
||||
static int nl80211_create_iface_once(struct wpa_driver_nl80211_data *drv,
|
||||
const char *ifname,
|
||||
enum nl80211_iftype iftype,
|
||||
@@ -76,7 +76,7 @@
|
||||
int (*handler)(struct nl_msg *, void *),
|
||||
void *arg)
|
||||
{
|
||||
@@ -6549,6 +6569,10 @@ static int nl80211_create_iface_once(str
|
||||
@@ -6551,6 +6571,10 @@ static int nl80211_create_iface_once(str
|
||||
if (wds && nla_put_u8(msg, NL80211_ATTR_4ADDR, wds))
|
||||
goto fail;
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
/*
|
||||
* Tell cfg80211 that the interface belongs to the socket that created
|
||||
* it, and the interface should be deleted when the socket is closed.
|
||||
@@ -6641,14 +6665,14 @@ static int nl80211_create_iface_once(str
|
||||
@@ -6643,14 +6667,14 @@ static int nl80211_create_iface_once(str
|
||||
|
||||
int nl80211_create_iface(struct wpa_driver_nl80211_data *drv,
|
||||
const char *ifname, enum nl80211_iftype iftype,
|
||||
@@ -105,7 +105,7 @@
|
||||
|
||||
/* if error occurred and interface exists already */
|
||||
if (ret < 0 && if_nametoindex(ifname)) {
|
||||
@@ -6674,7 +6698,7 @@ int nl80211_create_iface(struct wpa_driv
|
||||
@@ -6676,7 +6700,7 @@ int nl80211_create_iface(struct wpa_driv
|
||||
|
||||
/* Try to create the interface again */
|
||||
ret = nl80211_create_iface_once(drv, ifname, iftype, addr,
|
||||
@@ -114,7 +114,7 @@
|
||||
}
|
||||
|
||||
if (ret >= 0 && is_p2p_net_interface(iftype)) {
|
||||
@@ -9010,8 +9034,8 @@ static int i802_set_wds_sta(void *priv,
|
||||
@@ -9012,8 +9036,8 @@ static int i802_set_wds_sta(void *priv,
|
||||
if (!if_nametoindex(name)) {
|
||||
if (nl80211_create_iface(drv, name,
|
||||
NL80211_IFTYPE_AP_VLAN,
|
||||
@@ -125,7 +125,7 @@
|
||||
return -1;
|
||||
|
||||
if (bridge_ifname)
|
||||
@@ -9384,7 +9408,8 @@ static int wpa_driver_nl80211_if_add(voi
|
||||
@@ -9386,7 +9410,8 @@ static int wpa_driver_nl80211_if_add(voi
|
||||
|
||||
os_memset(&nonnetdev_info, 0, sizeof(nonnetdev_info));
|
||||
ifidx = nl80211_create_iface(drv, ifname, nlmode, addr,
|
||||
@@ -135,7 +135,7 @@
|
||||
&nonnetdev_info, use_existing);
|
||||
if (!nonnetdev_info.wdev_id_set || ifidx != 0) {
|
||||
wpa_printf(MSG_ERROR,
|
||||
@@ -9403,7 +9428,8 @@ static int wpa_driver_nl80211_if_add(voi
|
||||
@@ -9405,7 +9430,8 @@ static int wpa_driver_nl80211_if_add(voi
|
||||
(long long unsigned int) nonnetdev_info.wdev_id);
|
||||
} else {
|
||||
ifidx = nl80211_create_iface(drv, ifname, nlmode, addr,
|
||||
@@ -145,7 +145,7 @@
|
||||
if (use_existing && ifidx == -ENFILE) {
|
||||
added = 0;
|
||||
ifidx = if_nametoindex(ifname);
|
||||
@@ -9473,6 +9499,8 @@ static int wpa_driver_nl80211_if_add(voi
|
||||
@@ -9475,6 +9501,8 @@ static int wpa_driver_nl80211_if_add(voi
|
||||
new_bss->ctx = bss_ctx;
|
||||
new_bss->added_if = added;
|
||||
|
||||
|
||||
+3
-3
@@ -34,7 +34,7 @@ Signed-hostap: Antonio Quartulli <ordex@autistici.org>
|
||||
#include "config.h"
|
||||
|
||||
|
||||
@@ -2498,6 +2499,97 @@ static char * wpa_config_write_mac_value
|
||||
@@ -2561,6 +2562,97 @@ static char * wpa_config_write_mac_value
|
||||
#endif /* NO_CONFIG_WRITE */
|
||||
|
||||
|
||||
@@ -132,7 +132,7 @@ Signed-hostap: Antonio Quartulli <ordex@autistici.org>
|
||||
/* Helper macros for network block parser */
|
||||
|
||||
#ifdef OFFSET
|
||||
@@ -2794,6 +2886,8 @@ static const struct parse_data ssid_fiel
|
||||
@@ -2871,6 +2963,8 @@ static const struct parse_data ssid_fiel
|
||||
{ INT(ap_max_inactivity) },
|
||||
{ INT(dtim_period) },
|
||||
{ INT(beacon_int) },
|
||||
@@ -155,7 +155,7 @@ Signed-hostap: Antonio Quartulli <ordex@autistici.org>
|
||||
* macsec_policy - Determines the policy for MACsec secure session
|
||||
--- a/wpa_supplicant/wpa_supplicant.c
|
||||
+++ b/wpa_supplicant/wpa_supplicant.c
|
||||
@@ -4758,6 +4758,12 @@ static void wpas_start_assoc_cb(struct w
|
||||
@@ -4759,6 +4759,12 @@ static void wpas_start_assoc_cb(struct w
|
||||
params.beacon_int = ssid->beacon_int;
|
||||
else
|
||||
params.beacon_int = wpa_s->conf->beacon_int;
|
||||
|
||||
@@ -29,7 +29,7 @@ Tested-by: Simon Wunderlich <simon.wunderlich@openmesh.com>
|
||||
struct wpa_driver_set_key_params {
|
||||
--- a/src/drivers/driver_nl80211.c
|
||||
+++ b/src/drivers/driver_nl80211.c
|
||||
@@ -12716,6 +12716,18 @@ static int nl80211_put_mesh_id(struct nl
|
||||
@@ -12718,6 +12718,18 @@ static int nl80211_put_mesh_id(struct nl
|
||||
}
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ Tested-by: Simon Wunderlich <simon.wunderlich@openmesh.com>
|
||||
static int nl80211_put_mesh_config(struct nl_msg *msg,
|
||||
struct wpa_driver_mesh_bss_params *params)
|
||||
{
|
||||
@@ -12777,6 +12789,7 @@ static int nl80211_join_mesh(struct i802
|
||||
@@ -12779,6 +12791,7 @@ static int nl80211_join_mesh(struct i802
|
||||
nl80211_put_basic_rates(msg, params->basic_rates) ||
|
||||
nl80211_put_mesh_id(msg, params->meshid, params->meshid_len) ||
|
||||
nl80211_put_beacon_int(msg, params->beacon_int) ||
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Fix issues with disabling obss scan when using fixed_freq on
|
||||
|
||||
--- a/wpa_supplicant/wpa_supplicant.c
|
||||
+++ b/wpa_supplicant/wpa_supplicant.c
|
||||
@@ -3553,6 +3553,10 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
@@ -3554,6 +3554,10 @@ void ibss_mesh_setup_freq(struct wpa_sup
|
||||
|
||||
freq->freq = ssid->frequency;
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ method.
|
||||
|
||||
--- a/src/ap/hostapd.h
|
||||
+++ b/src/ap/hostapd.h
|
||||
@@ -189,6 +189,21 @@ struct mld_link_info {
|
||||
@@ -190,6 +190,21 @@ struct mld_link_info {
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -32,7 +32,7 @@ method.
|
||||
* struct hostapd_data - hostapd per-BSS data structure
|
||||
*/
|
||||
struct hostapd_data {
|
||||
@@ -202,6 +217,9 @@ struct hostapd_data {
|
||||
@@ -203,6 +218,9 @@ struct hostapd_data {
|
||||
|
||||
u8 own_addr[ETH_ALEN];
|
||||
|
||||
|
||||
@@ -143,7 +143,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2578,6 +2581,7 @@ static int hostapd_setup_interface_compl
|
||||
@@ -2581,6 +2584,7 @@ static int hostapd_setup_interface_compl
|
||||
if (err)
|
||||
goto fail;
|
||||
|
||||
@@ -151,7 +151,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
wpa_printf(MSG_DEBUG, "Completing interface initialization");
|
||||
if (iface->freq) {
|
||||
#ifdef NEED_AP_MLME
|
||||
@@ -2792,6 +2796,7 @@ dfs_offload:
|
||||
@@ -2795,6 +2799,7 @@ dfs_offload:
|
||||
|
||||
fail:
|
||||
wpa_printf(MSG_ERROR, "Interface initialization failed");
|
||||
@@ -159,7 +159,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
|
||||
if (iface->is_no_ir) {
|
||||
hostapd_set_state(iface, HAPD_IFACE_NO_IR);
|
||||
@@ -3541,6 +3546,7 @@ void hostapd_interface_deinit_free(struc
|
||||
@@ -3544,6 +3549,7 @@ void hostapd_interface_deinit_free(struc
|
||||
(unsigned int) iface->conf->num_bss);
|
||||
driver = iface->bss[0]->driver;
|
||||
drv_priv = iface->bss[0]->drv_priv;
|
||||
@@ -177,7 +177,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
|
||||
#define OCE_STA_CFON_ENABLED(hapd) \
|
||||
((hapd->conf->oce & OCE_STA_CFON) && \
|
||||
@@ -210,6 +211,7 @@ struct hostapd_data {
|
||||
@@ -211,6 +212,7 @@ struct hostapd_data {
|
||||
struct hostapd_iface *iface;
|
||||
struct hostapd_config *iconf;
|
||||
struct hostapd_bss_config *conf;
|
||||
@@ -185,7 +185,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
int interface_added; /* virtual interface added for this BSS */
|
||||
unsigned int started:1;
|
||||
unsigned int disabled:1;
|
||||
@@ -785,6 +787,7 @@ hostapd_alloc_bss_data(struct hostapd_if
|
||||
@@ -793,6 +795,7 @@ hostapd_alloc_bss_data(struct hostapd_if
|
||||
struct hostapd_bss_config *bss);
|
||||
int hostapd_setup_interface(struct hostapd_iface *iface);
|
||||
int hostapd_setup_interface_complete(struct hostapd_iface *iface, int err);
|
||||
@@ -195,7 +195,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
struct hostapd_iface * hostapd_alloc_iface(void);
|
||||
--- a/src/ap/ieee802_11.c
|
||||
+++ b/src/ap/ieee802_11.c
|
||||
@@ -3376,7 +3376,7 @@ static void handle_auth(struct hostapd_d
|
||||
@@ -4077,7 +4077,7 @@ static void handle_auth(struct hostapd_d
|
||||
u16 auth_alg, auth_transaction, status_code;
|
||||
u16 resp = WLAN_STATUS_SUCCESS;
|
||||
struct sta_info *sta = NULL;
|
||||
@@ -204,7 +204,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
u16 fc;
|
||||
const u8 *challenge = NULL;
|
||||
u8 resp_ies[2 + WLAN_AUTH_CHALLENGE_LEN];
|
||||
@@ -3415,6 +3415,11 @@ static void handle_auth(struct hostapd_d
|
||||
@@ -4116,6 +4116,11 @@ static void handle_auth(struct hostapd_d
|
||||
else
|
||||
sa = mgmt->sa;
|
||||
#endif /* CONFIG_IEEE80211BE */
|
||||
@@ -216,7 +216,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
|
||||
auth_alg = le_to_host16(mgmt->u.auth.auth_alg);
|
||||
auth_transaction = le_to_host16(mgmt->u.auth.auth_transaction);
|
||||
@@ -3584,6 +3589,13 @@ static void handle_auth(struct hostapd_d
|
||||
@@ -4306,6 +4311,13 @@ static void handle_auth(struct hostapd_d
|
||||
resp = WLAN_STATUS_UNSPECIFIED_FAILURE;
|
||||
goto fail;
|
||||
}
|
||||
@@ -230,7 +230,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
if (res == HOSTAPD_ACL_PENDING)
|
||||
return;
|
||||
|
||||
@@ -6189,7 +6201,7 @@ static void handle_assoc(struct hostapd_
|
||||
@@ -6999,7 +7011,7 @@ static void handle_assoc(struct hostapd_
|
||||
int resp = WLAN_STATUS_SUCCESS;
|
||||
u16 reply_res = WLAN_STATUS_UNSPECIFIED_FAILURE;
|
||||
const u8 *pos;
|
||||
@@ -239,7 +239,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
struct sta_info *sta;
|
||||
u8 *tmp = NULL;
|
||||
#ifdef CONFIG_FILS
|
||||
@@ -6445,6 +6457,11 @@ static void handle_assoc(struct hostapd_
|
||||
@@ -7255,6 +7267,11 @@ static void handle_assoc(struct hostapd_
|
||||
left = res;
|
||||
}
|
||||
#endif /* CONFIG_FILS */
|
||||
@@ -251,7 +251,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
|
||||
/* followed by SSID and Supported rates; and HT capabilities if 802.11n
|
||||
* is used */
|
||||
@@ -6537,6 +6554,7 @@ static void handle_assoc(struct hostapd_
|
||||
@@ -7347,6 +7364,7 @@ static void handle_assoc(struct hostapd_
|
||||
|
||||
#ifdef CONFIG_TAXONOMY
|
||||
taxonomy_sta_info_assoc_req(hapd, sta, pos, left);
|
||||
@@ -259,7 +259,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
#endif /* CONFIG_TAXONOMY */
|
||||
|
||||
sta->pending_wds_enable = 0;
|
||||
@@ -6550,6 +6568,13 @@ static void handle_assoc(struct hostapd_
|
||||
@@ -7360,6 +7378,13 @@ static void handle_assoc(struct hostapd_
|
||||
}
|
||||
#endif /* CONFIG_FILS */
|
||||
|
||||
@@ -273,7 +273,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
fail:
|
||||
|
||||
/*
|
||||
@@ -6788,6 +6813,7 @@ static void handle_disassoc(struct hosta
|
||||
@@ -7598,6 +7623,7 @@ static void handle_disassoc(struct hosta
|
||||
(unsigned long) len);
|
||||
return;
|
||||
}
|
||||
@@ -281,7 +281,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
|
||||
sta = ap_get_sta(hapd, mgmt->sa);
|
||||
if (!sta) {
|
||||
@@ -6819,6 +6845,8 @@ static void handle_deauth(struct hostapd
|
||||
@@ -7629,6 +7655,8 @@ static void handle_deauth(struct hostapd
|
||||
/* Clear the PTKSA cache entries for PASN */
|
||||
ptksa_cache_flush(hapd->ptksa, mgmt->sa, WPA_CIPHER_NONE);
|
||||
|
||||
@@ -313,7 +313,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
wpa_printf(MSG_DEBUG, "RRM action %u is not supported",
|
||||
--- a/src/ap/sta_info.c
|
||||
+++ b/src/ap/sta_info.c
|
||||
@@ -603,6 +603,7 @@ void ap_handle_timer(void *eloop_ctx, vo
|
||||
@@ -609,6 +609,7 @@ void ap_handle_timer(void *eloop_ctx, vo
|
||||
hostapd_logger(hapd, sta->addr, HOSTAPD_MODULE_IEEE80211,
|
||||
HOSTAPD_LEVEL_INFO, "deauthenticated due to "
|
||||
"local deauth request");
|
||||
@@ -321,7 +321,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
ap_free_sta(hapd, sta);
|
||||
return;
|
||||
}
|
||||
@@ -771,6 +772,7 @@ skip_poll:
|
||||
@@ -777,6 +778,7 @@ skip_poll:
|
||||
mlme_deauthenticate_indication(
|
||||
hapd, sta,
|
||||
WLAN_REASON_PREV_AUTH_NOT_VALID);
|
||||
@@ -329,7 +329,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
ap_free_sta(hapd, sta);
|
||||
break;
|
||||
}
|
||||
@@ -1772,17 +1774,30 @@ void ap_sta_set_authorized_event(struct
|
||||
@@ -1778,17 +1780,30 @@ void ap_sta_set_authorized_event(struct
|
||||
os_snprintf(buf, sizeof(buf), MACSTR, MAC2STR(sta->addr));
|
||||
|
||||
if (authorized) {
|
||||
@@ -360,7 +360,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
|
||||
#ifdef CONFIG_P2P
|
||||
if (wpa_auth_get_ip_addr(sta->wpa_sm, ip_addr_buf) == 0) {
|
||||
@@ -1794,6 +1809,13 @@ void ap_sta_set_authorized_event(struct
|
||||
@@ -1800,6 +1815,13 @@ void ap_sta_set_authorized_event(struct
|
||||
}
|
||||
#endif /* CONFIG_P2P */
|
||||
|
||||
@@ -374,7 +374,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),
|
||||
@@ -1818,17 +1840,19 @@ void ap_sta_set_authorized_event(struct
|
||||
@@ -1824,17 +1846,19 @@ void ap_sta_set_authorized_event(struct
|
||||
" vlanid=%u", sta->vlan_id);
|
||||
#endif /* CONFIG_NO_VLAN */
|
||||
|
||||
@@ -400,7 +400,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
hapd->msg_ctx_parent != hapd->msg_ctx)
|
||||
--- a/src/ap/sta_info.h
|
||||
+++ b/src/ap/sta_info.h
|
||||
@@ -265,6 +265,7 @@ struct sta_info {
|
||||
@@ -284,6 +284,7 @@ struct sta_info {
|
||||
#ifdef CONFIG_TAXONOMY
|
||||
struct wpabuf *probe_ie_taxonomy;
|
||||
struct wpabuf *assoc_ie_taxonomy;
|
||||
@@ -408,7 +408,7 @@ probe/assoc/auth requests via object subscribe.
|
||||
#endif /* CONFIG_TAXONOMY */
|
||||
|
||||
#ifdef CONFIG_FILS
|
||||
@@ -312,6 +313,7 @@ struct sta_info {
|
||||
@@ -331,6 +332,7 @@ struct sta_info {
|
||||
#endif /* CONFIG_TESTING_OPTIONS */
|
||||
#ifdef CONFIG_AIRTIME_POLICY
|
||||
unsigned int airtime_weight;
|
||||
|
||||
@@ -8,7 +8,7 @@ as adding/removing interfaces.
|
||||
|
||||
--- a/wpa_supplicant/wpa_supplicant.c
|
||||
+++ b/wpa_supplicant/wpa_supplicant.c
|
||||
@@ -1266,6 +1266,7 @@ void wpa_supplicant_set_state(struct wpa
|
||||
@@ -1267,6 +1267,7 @@ void wpa_supplicant_set_state(struct wpa
|
||||
sme_sched_obss_scan(wpa_s, 0);
|
||||
}
|
||||
wpa_s->wpa_state = state;
|
||||
@@ -16,7 +16,7 @@ as adding/removing interfaces.
|
||||
|
||||
#ifndef CONFIG_NO_ROBUST_AV
|
||||
if (state == WPA_COMPLETED && dl_list_len(&wpa_s->active_scs_ids) &&
|
||||
@@ -8386,6 +8387,8 @@ struct wpa_supplicant * wpa_supplicant_a
|
||||
@@ -8392,6 +8393,8 @@ struct wpa_supplicant * wpa_supplicant_a
|
||||
}
|
||||
#endif /* CONFIG_P2P */
|
||||
|
||||
@@ -25,7 +25,7 @@ as adding/removing interfaces.
|
||||
return wpa_s;
|
||||
}
|
||||
|
||||
@@ -8412,6 +8415,8 @@ int wpa_supplicant_remove_iface(struct w
|
||||
@@ -8418,6 +8421,8 @@ int wpa_supplicant_remove_iface(struct w
|
||||
struct wpa_supplicant *parent = wpa_s->parent;
|
||||
#endif /* CONFIG_MESH */
|
||||
|
||||
@@ -34,7 +34,7 @@ as adding/removing interfaces.
|
||||
/* Remove interface from the global list of interfaces */
|
||||
prev = global->ifaces;
|
||||
if (prev == wpa_s) {
|
||||
@@ -8731,6 +8736,7 @@ struct wpa_global * wpa_supplicant_init(
|
||||
@@ -8737,6 +8742,7 @@ struct wpa_global * wpa_supplicant_init(
|
||||
|
||||
eloop_register_timeout(WPA_SUPPLICANT_CLEANUP_INTERVAL, 0,
|
||||
wpas_periodic, global, NULL);
|
||||
@@ -42,7 +42,7 @@ as adding/removing interfaces.
|
||||
|
||||
return global;
|
||||
}
|
||||
@@ -8803,6 +8809,8 @@ void wpa_supplicant_deinit(struct wpa_gl
|
||||
@@ -8809,6 +8815,8 @@ void wpa_supplicant_deinit(struct wpa_gl
|
||||
|
||||
wpas_notify_supplicant_deinitialized(global);
|
||||
|
||||
@@ -68,7 +68,7 @@ as adding/removing interfaces.
|
||||
|
||||
extern const char *const wpa_supplicant_version;
|
||||
extern const char *const wpa_supplicant_license;
|
||||
@@ -718,6 +720,7 @@ struct wpa_supplicant {
|
||||
@@ -756,6 +758,7 @@ struct wpa_supplicant {
|
||||
unsigned char own_addr[ETH_ALEN];
|
||||
unsigned char perm_addr[ETH_ALEN];
|
||||
char ifname[100];
|
||||
@@ -76,7 +76,7 @@ as adding/removing interfaces.
|
||||
u8 hw_dfs_domain;
|
||||
#ifdef CONFIG_MATCH_IFACE
|
||||
int matched;
|
||||
@@ -1595,6 +1598,8 @@ struct wpa_supplicant {
|
||||
@@ -1633,6 +1636,8 @@ struct wpa_supplicant {
|
||||
unsigned int enabled_4addr_mode:1;
|
||||
unsigned int multi_bss_support:1;
|
||||
unsigned int drv_authorized_port:1;
|
||||
@@ -332,7 +332,7 @@ as adding/removing interfaces.
|
||||
if (conf->wmm_enabled < 0)
|
||||
conf->wmm_enabled = hapd->iconf->ieee80211n |
|
||||
hapd->iconf->ieee80211ax;
|
||||
@@ -1867,7 +1879,7 @@ int hostapd_set_acl(struct hostapd_data
|
||||
@@ -1870,7 +1882,7 @@ int hostapd_set_acl(struct hostapd_data
|
||||
}
|
||||
|
||||
|
||||
@@ -341,7 +341,7 @@ as adding/removing interfaces.
|
||||
{
|
||||
#ifdef CONFIG_IEEE80211BE
|
||||
int ret;
|
||||
@@ -2540,7 +2552,7 @@ static int hostapd_owe_iface_iter2(struc
|
||||
@@ -2543,7 +2555,7 @@ static int hostapd_owe_iface_iter2(struc
|
||||
#endif /* CONFIG_OWE */
|
||||
|
||||
|
||||
@@ -350,7 +350,7 @@ as adding/removing interfaces.
|
||||
{
|
||||
#ifdef CONFIG_OWE
|
||||
/* Check whether the enabled BSS can complete OWE transition mode
|
||||
@@ -2997,7 +3009,7 @@ hostapd_alloc_bss_data(struct hostapd_if
|
||||
@@ -3000,7 +3012,7 @@ hostapd_alloc_bss_data(struct hostapd_if
|
||||
}
|
||||
|
||||
|
||||
@@ -359,7 +359,7 @@ as adding/removing interfaces.
|
||||
{
|
||||
if (!hapd)
|
||||
return;
|
||||
@@ -3205,7 +3217,7 @@ fail:
|
||||
@@ -3208,7 +3220,7 @@ fail:
|
||||
}
|
||||
|
||||
|
||||
@@ -368,7 +368,7 @@ as adding/removing interfaces.
|
||||
{
|
||||
#ifdef CONFIG_IEEE80211BE
|
||||
struct hostapd_mld *mld, **all_mld;
|
||||
@@ -4086,7 +4098,8 @@ int hostapd_remove_iface(struct hapd_int
|
||||
@@ -4089,7 +4101,8 @@ int hostapd_remove_iface(struct hapd_int
|
||||
hapd_iface = interfaces->iface[i];
|
||||
if (hapd_iface == NULL)
|
||||
return -1;
|
||||
@@ -388,7 +388,7 @@ as adding/removing interfaces.
|
||||
|
||||
#define OCE_STA_CFON_ENABLED(hapd) \
|
||||
((hapd->conf->oce & OCE_STA_CFON) && \
|
||||
@@ -52,6 +53,10 @@ struct hapd_interfaces {
|
||||
@@ -53,6 +54,10 @@ struct hapd_interfaces {
|
||||
struct hostapd_config * (*config_read_cb)(const char *config_fname);
|
||||
int (*ctrl_iface_init)(struct hostapd_data *hapd);
|
||||
void (*ctrl_iface_deinit)(struct hostapd_data *hapd);
|
||||
@@ -399,7 +399,7 @@ as adding/removing interfaces.
|
||||
int (*for_each_interface)(struct hapd_interfaces *interfaces,
|
||||
int (*cb)(struct hostapd_iface *iface,
|
||||
void *ctx), void *ctx);
|
||||
@@ -212,6 +217,7 @@ struct hostapd_data {
|
||||
@@ -213,6 +218,7 @@ struct hostapd_data {
|
||||
struct hostapd_config *iconf;
|
||||
struct hostapd_bss_config *conf;
|
||||
struct hostapd_ubus_bss ubus;
|
||||
@@ -407,7 +407,7 @@ as adding/removing interfaces.
|
||||
int interface_added; /* virtual interface added for this BSS */
|
||||
unsigned int started:1;
|
||||
unsigned int disabled:1;
|
||||
@@ -587,6 +593,7 @@ struct hostapd_mld {
|
||||
@@ -595,6 +601,7 @@ struct hostapd_mld {
|
||||
*/
|
||||
struct hostapd_iface {
|
||||
struct hapd_interfaces *interfaces;
|
||||
@@ -415,7 +415,7 @@ as adding/removing interfaces.
|
||||
void *owner;
|
||||
char *config_fname;
|
||||
struct hostapd_config *conf;
|
||||
@@ -796,11 +803,16 @@ struct hostapd_iface * hostapd_init(stru
|
||||
@@ -804,11 +811,16 @@ struct hostapd_iface * hostapd_init(stru
|
||||
struct hostapd_iface *
|
||||
hostapd_interface_init_bss(struct hapd_interfaces *interfaces, const char *phy,
|
||||
const char *config_fname, int debug);
|
||||
@@ -432,7 +432,7 @@ as adding/removing interfaces.
|
||||
int hostapd_enable_iface(struct hostapd_iface *hapd_iface);
|
||||
int hostapd_reload_iface(struct hostapd_iface *hapd_iface);
|
||||
int hostapd_reload_bss_only(struct hostapd_data *bss);
|
||||
@@ -826,6 +838,7 @@ hostapd_switch_channel_fallback(struct h
|
||||
@@ -834,6 +846,7 @@ hostapd_switch_channel_fallback(struct h
|
||||
void hostapd_cleanup_cs_params(struct hostapd_data *hapd);
|
||||
void hostapd_periodic_iface(struct hostapd_iface *iface);
|
||||
int hostapd_owe_trans_get_info(struct hostapd_data *hapd);
|
||||
@@ -442,7 +442,7 @@ as adding/removing interfaces.
|
||||
void hostapd_switch_color(struct hostapd_data *hapd, u64 bitmap);
|
||||
--- a/src/ap/ieee802_11.c
|
||||
+++ b/src/ap/ieee802_11.c
|
||||
@@ -668,12 +668,17 @@ const char * sae_get_password(struct hos
|
||||
@@ -763,12 +763,17 @@ const char * sae_get_password(struct hos
|
||||
struct sae_pt **s_pt,
|
||||
const struct sae_pk **s_pk)
|
||||
{
|
||||
@@ -461,7 +461,7 @@ as adding/removing interfaces.
|
||||
/* With sae_track_password functionality enabled, try to first find the
|
||||
* next viable wildcard-address password if a password identifier was
|
||||
* not used. Select an wildcard-addr entry if the STA is known to have
|
||||
@@ -735,12 +740,30 @@ const char * sae_get_password(struct hos
|
||||
@@ -830,12 +835,30 @@ const char * sae_get_password(struct hos
|
||||
pt = hapd->conf->ssid.pt;
|
||||
}
|
||||
|
||||
@@ -494,7 +494,7 @@ as adding/removing interfaces.
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3744,6 +3767,12 @@ static void handle_auth(struct hostapd_d
|
||||
@@ -4466,6 +4489,12 @@ static void handle_auth(struct hostapd_d
|
||||
goto fail;
|
||||
}
|
||||
|
||||
@@ -509,9 +509,9 @@ as adding/removing interfaces.
|
||||
|
||||
--- a/src/ap/sta_info.c
|
||||
+++ b/src/ap/sta_info.c
|
||||
@@ -535,6 +535,11 @@ void ap_free_sta(struct hostapd_data *ha
|
||||
|
||||
wpabuf_free(sta->sae_pw_id);
|
||||
@@ -541,6 +541,11 @@ void ap_free_sta(struct hostapd_data *ha
|
||||
os_free(sta->eap_auth_data.rsnxe);
|
||||
#endif /* CONFIG_IEEE8021X_AUTH */
|
||||
|
||||
+#ifdef CONFIG_SAE
|
||||
+ if (sta->sae_pt)
|
||||
@@ -521,7 +521,7 @@ as adding/removing interfaces.
|
||||
os_free(sta);
|
||||
}
|
||||
|
||||
@@ -1758,6 +1763,8 @@ void ap_sta_set_authorized_event(struct
|
||||
@@ -1764,6 +1769,8 @@ void ap_sta_set_authorized_event(struct
|
||||
#endif /* CONFIG_P2P */
|
||||
const u8 *ip_ptr = NULL;
|
||||
|
||||
@@ -532,7 +532,7 @@ as adding/removing interfaces.
|
||||
if (sta->p2p_ie != NULL &&
|
||||
--- a/src/ap/sta_info.h
|
||||
+++ b/src/ap/sta_info.h
|
||||
@@ -190,6 +190,9 @@ struct sta_info {
|
||||
@@ -209,6 +209,9 @@ struct sta_info {
|
||||
int vlan_id_bound; /* updated by ap_sta_bind_vlan() */
|
||||
/* PSKs from RADIUS authentication server */
|
||||
struct hostapd_sta_wpa_psk_short *psk;
|
||||
@@ -588,7 +588,7 @@ as adding/removing interfaces.
|
||||
}
|
||||
--- a/src/drivers/driver.h
|
||||
+++ b/src/drivers/driver.h
|
||||
@@ -4174,6 +4174,25 @@ struct wpa_driver_ops {
|
||||
@@ -4176,6 +4176,25 @@ struct wpa_driver_ops {
|
||||
const char *ifname);
|
||||
|
||||
/**
|
||||
@@ -614,7 +614,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)
|
||||
@@ -7023,6 +7042,7 @@ union wpa_event_data {
|
||||
@@ -7027,6 +7046,7 @@ union wpa_event_data {
|
||||
|
||||
/**
|
||||
* struct ch_switch
|
||||
@@ -622,7 +622,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
|
||||
@@ -7033,6 +7053,7 @@ union wpa_event_data {
|
||||
@@ -7037,6 +7057,7 @@ union wpa_event_data {
|
||||
* @punct_bitmap: Puncturing bitmap
|
||||
*/
|
||||
struct ch_switch {
|
||||
@@ -702,7 +702,7 @@ as adding/removing interfaces.
|
||||
nl_cb_set(bss->nl_cb, NL_CB_SEQ_CHECK, NL_CB_CUSTOM,
|
||||
no_seq_check, NULL);
|
||||
nl_cb_set(bss->nl_cb, NL_CB_VALID, NL_CB_CUSTOM,
|
||||
@@ -9178,6 +9199,7 @@ static void *i802_init(struct hostapd_da
|
||||
@@ -9180,6 +9201,7 @@ static void *i802_init(struct hostapd_da
|
||||
char master_ifname[IFNAMSIZ];
|
||||
int ifindex, br_ifindex = 0;
|
||||
int br_added = 0;
|
||||
@@ -710,7 +710,7 @@ as adding/removing interfaces.
|
||||
|
||||
bss = wpa_driver_nl80211_drv_init(hapd, params->ifname,
|
||||
params->global_priv, 1,
|
||||
@@ -9238,21 +9260,17 @@ static void *i802_init(struct hostapd_da
|
||||
@@ -9240,21 +9262,17 @@ static void *i802_init(struct hostapd_da
|
||||
(params->num_bridge == 0 || !params->bridge[0]))
|
||||
add_ifidx(drv, br_ifindex, drv->ifindex);
|
||||
|
||||
@@ -742,7 +742,7 @@ as adding/removing interfaces.
|
||||
}
|
||||
|
||||
if (drv->capa.flags2 & WPA_DRIVER_FLAGS2_CONTROL_PORT_RX) {
|
||||
@@ -9639,6 +9657,50 @@ static int wpa_driver_nl80211_if_remove(
|
||||
@@ -9641,6 +9659,50 @@ static int wpa_driver_nl80211_if_remove(
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -793,7 +793,7 @@ as adding/removing interfaces.
|
||||
|
||||
static int cookie_handler(struct nl_msg *msg, void *arg)
|
||||
{
|
||||
@@ -11538,6 +11600,37 @@ static bool nl80211_is_drv_shared(void *
|
||||
@@ -11540,6 +11602,37 @@ static bool nl80211_is_drv_shared(void *
|
||||
#endif /* CONFIG_IEEE80211BE */
|
||||
|
||||
|
||||
@@ -831,7 +831,7 @@ as adding/removing interfaces.
|
||||
static int driver_nl80211_send_mlme(void *priv, const u8 *data,
|
||||
size_t data_len, int noack,
|
||||
unsigned int freq,
|
||||
@@ -15544,6 +15637,8 @@ const struct wpa_driver_ops wpa_driver_n
|
||||
@@ -15546,6 +15639,8 @@ const struct wpa_driver_ops wpa_driver_n
|
||||
.set_acl = wpa_driver_nl80211_set_acl,
|
||||
.if_add = wpa_driver_nl80211_if_add,
|
||||
.if_remove = driver_nl80211_if_remove,
|
||||
@@ -842,7 +842,7 @@ as adding/removing interfaces.
|
||||
.sta_add = wpa_driver_nl80211_sta_add,
|
||||
--- a/src/drivers/driver_nl80211_event.c
|
||||
+++ b/src/drivers/driver_nl80211_event.c
|
||||
@@ -1261,6 +1261,7 @@ static void mlme_event_ch_switch(struct
|
||||
@@ -1263,6 +1263,7 @@ static void mlme_event_ch_switch(struct
|
||||
struct nlattr *bw, struct nlattr *cf1,
|
||||
struct nlattr *cf2,
|
||||
struct nlattr *punct_bitmap,
|
||||
@@ -850,7 +850,7 @@ as adding/removing interfaces.
|
||||
int finished)
|
||||
{
|
||||
struct i802_bss *bss;
|
||||
@@ -1326,6 +1327,8 @@ static void mlme_event_ch_switch(struct
|
||||
@@ -1328,6 +1329,8 @@ static void mlme_event_ch_switch(struct
|
||||
data.ch_switch.cf1 = nla_get_u32(cf1);
|
||||
if (cf2)
|
||||
data.ch_switch.cf2 = nla_get_u32(cf2);
|
||||
@@ -859,7 +859,7 @@ as adding/removing interfaces.
|
||||
|
||||
if (link) {
|
||||
data.ch_switch.link_id = nla_get_u8(link);
|
||||
@@ -4421,6 +4424,7 @@ static void do_process_drv_event(struct
|
||||
@@ -4423,6 +4426,7 @@ static void do_process_drv_event(struct
|
||||
tb[NL80211_ATTR_CENTER_FREQ1],
|
||||
tb[NL80211_ATTR_CENTER_FREQ2],
|
||||
tb[NL80211_ATTR_PUNCT_BITMAP],
|
||||
@@ -867,7 +867,7 @@ as adding/removing interfaces.
|
||||
0);
|
||||
break;
|
||||
case NL80211_CMD_CH_SWITCH_NOTIFY:
|
||||
@@ -4433,6 +4437,7 @@ static void do_process_drv_event(struct
|
||||
@@ -4435,6 +4439,7 @@ static void do_process_drv_event(struct
|
||||
tb[NL80211_ATTR_CENTER_FREQ1],
|
||||
tb[NL80211_ATTR_CENTER_FREQ2],
|
||||
tb[NL80211_ATTR_PUNCT_BITMAP],
|
||||
@@ -941,7 +941,7 @@ as adding/removing interfaces.
|
||||
ifdef CONFIG_CODE_COVERAGE
|
||||
CFLAGS += -O0 -fprofile-arcs -ftest-coverage -U_FORTIFY_SOURCE
|
||||
LIBS += -lgcov
|
||||
@@ -1077,6 +1085,9 @@ ifdef CONFIG_CTRL_IFACE_MIB
|
||||
@@ -1082,6 +1090,9 @@ ifdef CONFIG_CTRL_IFACE_MIB
|
||||
CFLAGS += -DCONFIG_CTRL_IFACE_MIB
|
||||
endif
|
||||
OBJS += ../src/ap/ctrl_iface_ap.o
|
||||
@@ -1001,7 +1001,7 @@ as adding/removing interfaces.
|
||||
MULTI_AP_FRONTHAUL_BSS);
|
||||
wpa_s->multi_ap_ie = 1;
|
||||
}
|
||||
@@ -5848,6 +5855,13 @@ static void wpas_event_rx_mgmt_action(st
|
||||
@@ -5857,6 +5864,13 @@ static void wpas_event_rx_mgmt_action(st
|
||||
}
|
||||
#endif /* CONFIG_WNM */
|
||||
|
||||
@@ -1015,7 +1015,7 @@ as adding/removing interfaces.
|
||||
#ifdef CONFIG_GAS
|
||||
if ((mgmt->u.action.category == WLAN_ACTION_PUBLIC ||
|
||||
mgmt->u.action.category == WLAN_ACTION_PROTECTED_DUAL) &&
|
||||
@@ -6654,6 +6668,7 @@ void supplicant_event(void *ctx, enum wp
|
||||
@@ -6663,6 +6677,7 @@ void supplicant_event(void *ctx, enum wp
|
||||
event_to_string(event), event);
|
||||
#endif /* CONFIG_NO_STDOUT_DEBUG */
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@ as adding/removing interfaces.
|
||||
return NULL;
|
||||
--- a/src/ap/hostapd.c
|
||||
+++ b/src/ap/hostapd.c
|
||||
@@ -3410,8 +3410,13 @@ hostapd_interface_init_bss(struct hapd_i
|
||||
@@ -3413,8 +3413,13 @@ hostapd_interface_init_bss(struct hapd_i
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ full device, e.g. in order to deal with hardware/driver limitations
|
||||
{
|
||||
--- a/src/ap/hostapd.h
|
||||
+++ b/src/ap/hostapd.h
|
||||
@@ -840,6 +840,7 @@ void hostapd_periodic_iface(struct hosta
|
||||
@@ -848,6 +848,7 @@ void hostapd_periodic_iface(struct hosta
|
||||
int hostapd_owe_trans_get_info(struct hostapd_data *hapd);
|
||||
void hostapd_owe_update_trans(struct hostapd_iface *iface);;
|
||||
void hostapd_ocv_check_csa_sa_query(void *eloop_ctx, void *timeout_ctx);
|
||||
|
||||
@@ -112,7 +112,7 @@ untagged DHCP packets
|
||||
hapd->x_snoop_initialized = false;
|
||||
--- a/src/drivers/driver.h
|
||||
+++ b/src/drivers/driver.h
|
||||
@@ -4588,7 +4588,7 @@ struct wpa_driver_ops {
|
||||
@@ -4590,7 +4590,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,
|
||||
@@ -123,7 +123,7 @@ untagged DHCP packets
|
||||
* get_wowlan - Get wake-on-wireless status
|
||||
--- a/src/drivers/driver_nl80211.c
|
||||
+++ b/src/drivers/driver_nl80211.c
|
||||
@@ -13236,7 +13236,7 @@ static const char * drv_br_net_param_str
|
||||
@@ -13238,7 +13238,7 @@ static const char * drv_br_net_param_str
|
||||
|
||||
|
||||
static int wpa_driver_br_set_net_param(void *priv, enum drv_br_net_param param,
|
||||
@@ -132,7 +132,7 @@ untagged DHCP packets
|
||||
{
|
||||
struct i802_bss *bss = priv;
|
||||
char path[128];
|
||||
@@ -13262,8 +13262,11 @@ static int wpa_driver_br_set_net_param(v
|
||||
@@ -13264,8 +13264,11 @@ static int wpa_driver_br_set_net_param(v
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/src/ap/ieee802_1x.c
|
||||
+++ b/src/ap/ieee802_1x.c
|
||||
@@ -2005,6 +2005,25 @@ static int ieee802_1x_update_vlan(struct
|
||||
@@ -2021,6 +2021,25 @@ static int ieee802_1x_update_vlan(struct
|
||||
}
|
||||
#endif /* CONFIG_NO_VLAN */
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
/**
|
||||
* ieee802_1x_receive_auth - Process RADIUS frames from Authentication Server
|
||||
@@ -2121,6 +2140,7 @@ ieee802_1x_receive_auth(struct radius_ms
|
||||
@@ -2137,6 +2156,7 @@ ieee802_1x_receive_auth(struct radius_ms
|
||||
ieee802_1x_check_hs20(hapd, sta, msg,
|
||||
session_timeout_set ?
|
||||
(int) session_timeout : -1);
|
||||
@@ -36,7 +36,7 @@
|
||||
sm->eap_if->aaaFail = true;
|
||||
--- a/src/ap/sta_info.h
|
||||
+++ b/src/ap/sta_info.h
|
||||
@@ -95,6 +95,7 @@ struct sta_info {
|
||||
@@ -114,6 +114,7 @@ struct sta_info {
|
||||
u8 supported_rates[WLAN_SUPP_RATES_MAX];
|
||||
int supported_rates_len;
|
||||
u8 qosinfo; /* Valid when WLAN_STA_WMM is set */
|
||||
|
||||
+7
-7
@@ -39,7 +39,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
||||
|
||||
--- a/hostapd/Makefile
|
||||
+++ b/hostapd/Makefile
|
||||
@@ -1449,6 +1449,11 @@ CFLAGS += -DCONFIG_PROCESS_COORDINATION
|
||||
@@ -1454,6 +1454,11 @@ CFLAGS += -DCONFIG_PROCESS_COORDINATION
|
||||
OBJS += ../src/common/proc_coord.o
|
||||
endif
|
||||
|
||||
@@ -373,7 +373,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
||||
|
||||
#ifdef CONFIG_FILS
|
||||
static struct wpabuf *
|
||||
@@ -4138,8 +4141,8 @@ static u16 check_multi_ap(struct hostapd
|
||||
@@ -4868,8 +4871,8 @@ static u16 check_multi_ap(struct hostapd
|
||||
}
|
||||
|
||||
|
||||
@@ -384,7 +384,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
||||
{
|
||||
/* Supported rates not used in IEEE 802.11ad/DMG */
|
||||
if (hapd->iface->current_mode &&
|
||||
@@ -4604,7 +4607,7 @@ static int __check_assoc_ies(struct host
|
||||
@@ -5337,7 +5340,7 @@ static int __check_assoc_ies(struct host
|
||||
elems->ext_capab_len);
|
||||
if (resp != WLAN_STATUS_SUCCESS)
|
||||
goto out;
|
||||
@@ -393,7 +393,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
||||
if (resp != WLAN_STATUS_SUCCESS)
|
||||
goto out;
|
||||
|
||||
@@ -6909,6 +6912,11 @@ static void handle_beacon(struct hostapd
|
||||
@@ -7719,6 +7722,11 @@ static void handle_beacon(struct hostapd
|
||||
0);
|
||||
|
||||
ap_list_process_beacon(hapd->iface, mgmt, &elems, fi);
|
||||
@@ -407,7 +407,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
||||
|
||||
--- a/src/ap/ieee802_11.h
|
||||
+++ b/src/ap/ieee802_11.h
|
||||
@@ -145,6 +145,8 @@ int hostapd_process_ml_assoc_req_addr(st
|
||||
@@ -146,6 +146,8 @@ int hostapd_process_ml_assoc_req_addr(st
|
||||
const u8 *basic_mle, size_t basic_mle_len,
|
||||
u8 *mld_addr);
|
||||
int hostapd_get_aid(struct hostapd_data *hapd, struct sta_info *sta);
|
||||
@@ -418,7 +418,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
||||
u16 copy_sta_vendor_vht(struct hostapd_data *hapd, struct sta_info *sta,
|
||||
--- a/src/drivers/driver.h
|
||||
+++ b/src/drivers/driver.h
|
||||
@@ -4282,7 +4282,7 @@ struct wpa_driver_ops {
|
||||
@@ -4284,7 +4284,7 @@ struct wpa_driver_ops {
|
||||
* Returns: 0 on success, -1 on failure
|
||||
*/
|
||||
int (*set_wds_sta)(void *priv, const u8 *addr, int aid, int val,
|
||||
@@ -429,7 +429,7 @@ Hotfix-by: Sebastian Gottschall https://github.com/mirror/dd-wrt/commit/0c3001a6
|
||||
* send_action - Transmit an Action frame
|
||||
--- a/src/drivers/driver_nl80211.c
|
||||
+++ b/src/drivers/driver_nl80211.c
|
||||
@@ -9030,25 +9030,15 @@ int nl80211_has_ifidx(struct wpa_driver_
|
||||
@@ -9032,25 +9032,15 @@ int nl80211_has_ifidx(struct wpa_driver_
|
||||
|
||||
|
||||
static int i802_set_wds_sta(void *priv, const u8 *addr, int aid, int val,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/src/ap/sta_info.c
|
||||
+++ b/src/ap/sta_info.c
|
||||
@@ -2166,3 +2166,22 @@ void ap_sta_free_sta_profile(struct mld_
|
||||
@@ -2172,3 +2172,22 @@ void ap_sta_free_sta_profile(struct mld_
|
||||
}
|
||||
}
|
||||
#endif /* CONFIG_IEEE80211BE */
|
||||
@@ -25,7 +25,7 @@
|
||||
+
|
||||
--- a/src/ap/sta_info.h
|
||||
+++ b/src/ap/sta_info.h
|
||||
@@ -430,23 +430,8 @@ int ap_sta_re_add(struct hostapd_data *h
|
||||
@@ -453,23 +453,8 @@ int ap_sta_re_add(struct hostapd_data *h
|
||||
|
||||
void ap_free_sta_pasn(struct hostapd_data *hapd, struct sta_info *sta);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user