hostap/src/ap
Venkateswara Naralasetty 9c06f0f6ae hostapd: Add Multi-AP protocol support
The purpose of Multi-AP specification is to enable inter-operability
across Wi-Fi access points (APs) from different vendors.

This patch introduces one new configuration parameter 'multi_ap' to
enable Multi-AP functionality and to configure the BSS as a backhaul
and/or fronthaul BSS.

Advertise vendor specific Multi-AP capabilities in (Re)Association
Response frame, if Multi-AP functionality is enabled through the
configuration parameter.

A backhaul AP must support receiving both 3addr and 4addr frames from a
backhaul STA, so create a VLAN for it just like is done for WDS, i.e.,
by calling hostapd_set_wds_sta(). Since Multi-AP requires WPA2 (never
WEP), we can safely call hostapd_set_wds_encryption() as well and we can
reuse the entire WDS condition.

To parse the Multi-AP Extension subelement, we use get_ie(): even though
that function is meant for parsing IEs, it works for subelements.

Signed-off-by: Venkateswara Naralasetty <vnaralas@codeaurora.org>
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-12-20 01:04:14 +02:00
..
accounting.c Remove unused generation of Request Authenticator in Account-Request 2016-09-22 00:34:19 +03:00
accounting.h RADIUS: Use more likely unique accounting Acct-{,Multi-}Session-Id 2016-02-06 17:10:19 +02:00
acs.c ACS: Avoid invalid interference factor when survey channel time is zero 2018-05-16 01:16:54 +03:00
acs.h ACS: Fix memory leak if interface is disabled during scan 2017-03-04 17:30:15 +02:00
ap_config.c OCV: Add hostapd config parameter 2018-12-16 20:31:21 +02:00
ap_config.h hostapd: Add Multi-AP protocol support 2018-12-20 01:04:14 +02:00
ap_drv_ops.c OCE: Move OCE checks to IE formation from hostapd initialization 2018-10-30 15:43:01 +02:00
ap_drv_ops.h Add driver API to get current channel parameters 2018-12-16 18:35:30 +02:00
ap_list.c Move ap_list_timer() to use common AP periodic cleanup mechanism 2015-07-20 13:42:35 +03:00
ap_list.h Move ap_list_timer() to use common AP periodic cleanup mechanism 2015-07-20 13:42:35 +03:00
ap_mlme.c FILS: Do not clear PTK on FILS Auth/Assoc (AP) 2016-10-22 18:11:14 +03:00
ap_mlme.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
authsrv.c HS 2.0 server: RADIUS server support for SIM provisioning 2018-12-15 18:01:38 +02:00
authsrv.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
beacon.c Move send_probe_response parameter to BSS specific items 2018-12-07 15:03:11 +02:00
beacon.h hostapd: Added signal level to STA tracking 2016-10-29 00:55:49 +03:00
bss_load.c hostapd: Add average channel utilization in STATUS 2017-12-12 00:48:27 +02:00
bss_load.h AP: Add support for BSS load element (STA Count, Channel Utilization) 2014-10-21 23:25:48 +03:00
ctrl_iface_ap.c hostapd: Add ctrl iface indications for WDS STA interface 2018-04-24 00:35:47 +03:00
ctrl_iface_ap.h DPP: Allow PMKSA cache entries to be added through hostapd ctrl_iface 2017-06-19 21:13:17 +03:00
dfs.c DFS: Mark channels required DFS based on reg-domain info from the driver 2018-04-24 00:35:47 +03:00
dfs.h DFS: Handle pre-CAC expired event 2017-03-09 17:01:50 +02:00
dhcp_snoop.c Fix DHCP/NDISC snoop deinit followed by failing re-init 2017-03-04 11:42:15 +02:00
dhcp_snoop.h AP: Add support for Proxy ARP, DHCP snooping mechanism 2014-10-28 01:08:29 +02:00
dpp_hostapd.c DPP: Apply testing configuration option to signing of own config 2018-12-02 00:26:21 +02:00
dpp_hostapd.h DPP: Support retrieving of configurator's private key 2018-03-16 20:55:32 +02:00
drv_callbacks.c OCV: Perform an SA Query after a channel switch 2018-12-17 15:50:12 +02:00
eap_user_db.c HS 2.0 server: RADIUS server support for SIM provisioning 2018-12-15 18:01:38 +02:00
eth_p_oui.c FT: Replace inter-AP protocol with use of OUI Extended Ethertype 2017-05-03 18:30:31 +03:00
eth_p_oui.h FT: Replace inter-AP protocol with use of OUI Extended Ethertype 2017-05-03 18:30:31 +03:00
fils_hlp.c FILS: Do not process FILS HLP request again while previous one is pending 2018-12-07 16:03:40 +02:00
fils_hlp.h FILS: DHCP relay for HLP requests 2017-02-01 18:17:39 +02:00
gas_query_ap.c DPP: Integration for hostapd 2017-06-19 21:13:17 +03:00
gas_query_ap.h DPP: Integration for hostapd 2017-06-19 21:13:17 +03:00
gas_serv.c HS 2.0: OSU Provider NAI List advertisement 2018-10-05 20:49:42 +03:00
gas_serv.h HS 2.0: OSU Provider NAI List advertisement 2018-10-05 20:49:42 +03:00
hostapd.c Fix indentation level 2018-11-30 21:28:19 +02:00
hostapd.h OCE: Move OCE checks to IE formation from hostapd initialization 2018-10-30 15:43:01 +02:00
hs20.c OCV: Advertise OCV capability in RSN capabilities (AP) 2018-12-16 20:48:48 +02:00
hs20.h HS 2.0: Move Terms and Conditions Server URL generation from AP to AS 2018-06-21 20:50:54 +03:00
hw_features.c Fix 5 GHz to 2.4 GHz channel switch with hostapd through DISABLE/ENABLE 2018-10-16 00:50:40 +03:00
hw_features.h hostapd: Fix some compilation errors 2015-03-29 20:51:14 +03:00
iapp.c IAPP: Set SO_REUSEADDR on listening socket 2016-08-18 20:01:48 +03:00
iapp.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
ieee802_1x.c HS 2.0: Allow Hotspot 2.0 release number to be configured 2018-12-08 14:06:54 +02:00
ieee802_1x.h FILS: Export IEEE 802.1X helper functions 2016-10-22 23:13:17 +03:00
ieee802_11.c hostapd: Add Multi-AP protocol support 2018-12-20 01:04:14 +02:00
ieee802_11.h OCV: Include and verify OCI in SA Query frames 2018-12-17 15:42:23 +02:00
ieee802_11_auth.c Extend ACL check for Probe Request frames 2018-03-03 00:42:16 +02:00
ieee802_11_auth.h Extend ACL check for Probe Request frames 2018-03-03 00:42:16 +02:00
ieee802_11_he.c hostapd: Update HE capabilities and HE operation definition 2017-10-05 15:09:43 +03:00
ieee802_11_ht.c Do not disable 40 MHz based on co-ex report with matching primary channel 2018-03-21 16:58:05 +02:00
ieee802_11_shared.c OCV: Include and verify OCI in SA Query frames 2018-12-17 15:42:23 +02:00
ieee802_11_vht.c Store the VHT Operation element of an associated STA 2018-12-16 18:35:30 +02:00
Makefile Fix ap-mgmt-fuzzer build 2017-12-09 18:41:55 +02:00
mbo_ap.c MBO: Do not parse reason_detail in non_pref_chan attr (AP) 2016-09-25 17:31:26 +03:00
mbo_ap.h MBO: Parse non-preferred channel list on the AP 2016-02-22 21:17:38 +02:00
ndisc_snoop.c Fix DHCP/NDISC snoop deinit followed by failing re-init 2017-03-04 11:42:15 +02:00
ndisc_snoop.h proxyarp: Use C library header files and CONFIG_IPV6 2014-11-25 16:58:21 +02:00
neighbor_db.c hostapd: Add a configuration to set an AP as stationary 2016-10-29 19:16:47 +03:00
neighbor_db.h hostapd: Add a configuration to set an AP as stationary 2016-10-29 19:16:47 +03:00
p2p_hostapd.c Use P2P_IE_VENDOR_TYPE more consistently 2014-03-05 23:36:54 +02:00
p2p_hostapd.h Remove the GPL notification from files contributed by Atheros 2012-02-11 19:39:36 +02:00
pmksa_cache_auth.c FILS: Update PMKID derivation rules for ERP key hierarchy establishment 2017-09-13 22:17:58 +03:00
pmksa_cache_auth.h OWE: PMKSA caching in AP mode 2017-10-09 12:12:54 +03:00
preauth_auth.c Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
preauth_auth.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
rrm.c RRM: Fix range request overriding 2017-02-09 13:26:06 +02:00
rrm.h Report beacon request TX status as control interface event 2017-01-03 16:02:58 +02:00
sta_info.c hostapd: Add Multi-AP protocol support 2018-12-20 01:04:14 +02:00
sta_info.h hostapd: Add Multi-AP protocol support 2018-12-20 01:04:14 +02:00
taxonomy.c Fix or supress various sparse warnings 2017-01-29 18:33:10 +02:00
taxonomy.h taxonomy: Store Probe Request frames in hostapd_sta_info 2016-09-22 00:45:24 +03:00
tkip_countermeasures.c hostapd: Add logging around Michael MIC related failures 2018-04-02 16:51:29 +03:00
tkip_countermeasures.h hostapd: Fix a regression in TKIP countermeasures processing 2012-11-18 13:06:03 +02:00
utils.c FST: Do not prune STAs belonging to the same FST 2015-07-16 18:26:15 +03:00
vlan.c VLAN: Fix vlan_compare() for tagged VLANs 2016-02-22 19:53:05 +02:00
vlan.h radius: Add tagged VLAN parsing 2016-02-17 11:46:13 +02:00
vlan_full.c VLAN: Warn about interface name truncation 2018-12-03 12:44:11 +02:00
vlan_ifconfig.c vlan: Move if_nametoindex() use out of vlan_init.c 2016-03-25 18:00:44 +02:00
vlan_init.c AP: Warn about VLAN interface name truncations 2018-10-16 12:56:04 +03:00
vlan_init.h VLAN: Separate station grouping and uplink configuration 2016-02-17 11:46:11 +02:00
vlan_ioctl.c Use own header file for defining Linux VLAN kernel interface 2016-03-26 11:24:38 +02:00
vlan_util.c vlan: Remove unnecessary header includes from netlink implementation 2016-03-25 17:27:16 +02:00
vlan_util.h vlan: Move if_nametoindex() use out of vlan_init.c 2016-03-25 18:00:44 +02:00
wmm.c WMM: Fix estimated medium time calculation for some corner cases 2017-02-11 12:12:28 +02:00
wmm.h Remove obsolete license notifications 2013-12-24 22:59:52 +02:00
wnm_ap.c OCV: Include and verify OCI in WNM-Sleep Exit frames 2018-12-17 15:50:12 +02:00
wnm_ap.h WNM: Collocated Interference Reporting 2018-10-30 14:07:51 +02:00
wpa_auth.c OCV: Include and verify OCI in the FILS handshake 2018-12-17 15:50:12 +02:00
wpa_auth.h OCV: Add function to derive Tx parameters to a specific STA 2018-12-17 15:42:19 +02:00
wpa_auth_ft.c OCV: Include and verify OCI in the FT handshake 2018-12-17 15:42:23 +02:00
wpa_auth_glue.c OCV: Add function to derive Tx parameters to a specific STA 2018-12-17 15:42:19 +02:00
wpa_auth_glue.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
wpa_auth_i.h OCV: Track STA OCV capability in AP mode 2018-12-16 20:49:13 +02:00
wpa_auth_ie.c OCV: Parse all types of OCI information elements 2018-12-17 00:02:14 +02:00
wpa_auth_ie.h OCV: Parse all types of OCI information elements 2018-12-17 00:02:14 +02:00
wps_hostapd.c WPS: Map GCMP-256 and CCMP-256 to AES encryption type 2017-12-02 12:00:45 +02:00
wps_hostapd.h WPS NFC: Add AP mode connection handover report 2014-01-27 21:10:55 +02:00
x_snoop.c AP: Enable multicast snooping on bridge if ProxyARP IPv6 is in use 2015-04-13 14:00:32 +03:00
x_snoop.h AP: Add multicast-to-unicast conversion send for "x_snoop" 2014-11-19 16:25:13 +02:00