forked from mirror/openwrt
33fb6c738bc4 P2P2: Enable some testing parameters without CONFIG_TESTING_OPTIONS 56616c4183a6 P2P2: Update device name with USD device found 1d791939dcdf Cancel pending connect radio work when network is removed 8235e21d7fe3 P2P: Fix preferred frequency list size handling in p2p_check_pref_chan() 4bc754d9c727 Add QCA vendor interface to enable/disable TX power limit d65f5705df98 Add QCA vendor attribute to disable A-MSDU address check validation 74881765b7fb nl80211: Use i802_bss in qca_set_allowed_ap_freqs() to use correct ifindex ca8303135cbb P2P2: Set P2P mode to the driver on P2P GO device 063ae7af68dc ACS: Fix incorrect index calculation for primary channel 4aa3a58377c1 ACS: Validate all channels in a segment before selection 02c9d3376224 ACS: Extend support to exclude 6 GHz non-PSC in non-offloaded ACS 307365eb57bb tests: Add test for ACS exclude 6 GHz non-PSC 0721e4886316 Add QCA vendor attribute to configure EHT RTWT support 76b39db44c77 QCA vendor attribute to configure BTM MLD Recommendation For Multiple APs support 2faeffdeca22 AP MLD: Properly deinit sm of non-ML STA connected to ML AP e4f4e5a872a5 AP MLD: Fix STA's flag wrongly updated in SME-in-driver cases ec6cade42c0f Increase buffer size to handle long freq_list entries in config 0522585da7b0 Write freq_list as per-network item in wpa_supplicant.conf 5e527704b912 Use SCS reconfiguration logic under CONFIG_NO_ROBUST_AV 5d6214a724c1 PASN: Clear driver/firwmare ranging context if PASN Auth 1 fails 14dc782d50db DPP: Avoid generating DPP shared secret(z) for non-association links 40326b60b17a RSNO: Allow OWE to be configured in RSN overrides in AP processing acadef1b04d5 hostapd_cli: Open a new hostapd connection on ping failure when using -a ac0d9bd80ec5 Add QCA vendor attributes to configure global TX chain mask f5b8ef6c966a Add QCA vendor attributes for MSDU TX statistics 6c11fcefe4fc hostapd: Prevent blocking sends on control interface monitor socket 0bbb8a66f64c AP MLD: Remove redundant outer loop in hostapd_notif_disassoc_mld() 52fb5ccd91f3 AP MLD: Avoid using mld_id to identify partners 7bb930d50b5f wpa_supplicant: Add option to disable 80+80 MHz opclass advertisement 9001059bd6ad tests: Make dbus_connect_oom more robust 663fb1940231 AP MLD: Fix hostapd_is_mld_ap() check 590f3bdb4c61 AP MLD: Rename hostapd_is_mld_ap() to hostapd_is_multiple_link_mld() b13b69a235f7 Add VLANID in the AP-STA-CONNECTED events c1e8b1c6462b SAE: Assign VLAN when using PMKSA caching 9bc29dcdfdee SAE: Default password binding through control interface 9de127c31c40 tests: More testing coverage for SAE with multiple passwords 5ce1d4180386 nl80211: Fix crash by cancelling scan timeout before a BSS is removed ca266cc24d87 nl80211: Fix crash by setting the drv->ctx properly Signed-off-by: Felix Fietkau <nbd@nbd.name>
46 lines
1.7 KiB
Diff
46 lines
1.7 KiB
Diff
From: Felix Fietkau <nbd@nbd.name>
|
|
Date: Fri, 4 Jun 2021 09:12:07 +0200
|
|
Subject: [PATCH] hostapd: configure inter-AP communication interface for
|
|
802.11r
|
|
|
|
In setups using VLAN bridge filtering, hostapd may need to communicate using
|
|
a VLAN interface on top of the bridge, instead of using the bridge directly
|
|
|
|
--- a/hostapd/config_file.c
|
|
+++ b/hostapd/config_file.c
|
|
@@ -3054,6 +3054,8 @@ static int hostapd_config_fill(struct ho
|
|
wpa_printf(MSG_INFO,
|
|
"Line %d: Obsolete peerkey parameter ignored", line);
|
|
#ifdef CONFIG_IEEE80211R_AP
|
|
+ } else if (os_strcmp(buf, "ft_iface") == 0) {
|
|
+ os_strlcpy(bss->ft_iface, pos, sizeof(bss->ft_iface));
|
|
} else if (os_strcmp(buf, "mobility_domain") == 0) {
|
|
if (os_strlen(pos) != 2 * MOBILITY_DOMAIN_ID_LEN ||
|
|
hexstr2bin(pos, bss->mobility_domain,
|
|
--- a/src/ap/ap_config.h
|
|
+++ b/src/ap/ap_config.h
|
|
@@ -285,6 +285,7 @@ struct airtime_sta_weight {
|
|
struct hostapd_bss_config {
|
|
char iface[IFNAMSIZ + 1];
|
|
char bridge[IFNAMSIZ + 1];
|
|
+ char ft_iface[IFNAMSIZ + 1];
|
|
char vlan_bridge[IFNAMSIZ + 1];
|
|
char wds_bridge[IFNAMSIZ + 1];
|
|
int bridge_hairpin; /* hairpin_mode on bridge members */
|
|
--- a/src/ap/wpa_auth_glue.c
|
|
+++ b/src/ap/wpa_auth_glue.c
|
|
@@ -1848,8 +1848,12 @@ int hostapd_setup_wpa(struct hostapd_dat
|
|
wpa_key_mgmt_ft(hapd->conf->wpa_key_mgmt)) {
|
|
const char *ft_iface;
|
|
|
|
- ft_iface = hapd->conf->bridge[0] ? hapd->conf->bridge :
|
|
- hapd->conf->iface;
|
|
+ if (hapd->conf->ft_iface[0])
|
|
+ ft_iface = hapd->conf->ft_iface;
|
|
+ else if (hapd->conf->bridge[0])
|
|
+ ft_iface = hapd->conf->bridge;
|
|
+ else
|
|
+ ft_iface = hapd->conf->iface;
|
|
hapd->l2 = l2_packet_init(ft_iface, NULL, ETH_P_RRB,
|
|
hostapd_rrb_receive, hapd, 1);
|
|
if (!hapd->l2) {
|