hostapd/src/ap
Michal Kazior d9d5e55c54 DPP: Respond to GAS on the same channel it was received on
When I was testing dpp_auth_init on an AP with Enrollee on a different
channel from the AP I was getting failures. This happened on hwsim in
UML with time-travel for me. I don't recall seeing this with real
devices, presumably because of lax offchan implementation.

The DPP authentication would succeed. However the station would then try
to get configuration through a GAS request and fail.

The AP reported the following logs (grepped):

> 1614762426.860212: RX_ACTION category 4 action 10 sa 02:00:00:00:01:00 da 02:00:00:00:00:00 len 227 freq 2412
> 1614762426.860212: wlan0: GAS: GAS Initial Request from 02:00:00:00:01:00 (dialog token 239)
> 1614762426.860233: DPP: Wait for Configuration Result
> 1614762426.860234: nl80211: Send Action frame (ifindex=5, freq=2462 MHz wait=0 ms no_cck=0 offchanok=0)
> 1614762428.861186: DPP: Timeout while waiting for Configuration Result
> 1614762428.861186: wlan0: DPP-CONF-FAILED

While the STA reported the following logs (grepped):

> 1614762426.860193: wlan1: DPP-AUTH-SUCCESS init=0
> 1614762426.860195: DPP: Stop listen on 2412 MHz
> 1614762426.860202: wlan1: GAS-QUERY-START addr=02:00:00:00:00:00 dialog_token=239 freq=2412
> 1614762428.861185: GAS: No response received for query to 02:00:00:00:00:00 dialog token 239
> 1614762428.861189: DPP: GAS query did not succeed
> 1614762428.861189: wlan1: DPP-CONF-FAILED

AP would still receive the GAS request on ch1 but would then try to
respond on ch11 while STA was waiting on ch1.

Signed-off-by: Michal Kazior <michal@plume.com>
2022-12-18 21:07:56 +02:00
..
accounting.c Extra RADIUS request attributes from SQLite 2019-07-30 19:58:09 +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: Allow selecting a better channel when using 40/80/160 MHz 2022-11-28 23:31:33 +02:00
acs.h ACS: Fix memory leak if interface is disabled during scan 2017-03-04 17:30:15 +02:00
airtime_policy.c Testing functionality for airtime policy 2021-03-20 12:03:01 +02:00
airtime_policy.h hostapd: Add airtime policy configuration support 2019-05-02 14:57:43 +03:00
ap_config.c mbssid: Add new configuration option 2022-12-02 16:36:19 +02:00
ap_config.h hostapd: Add require_he configuration 2022-12-16 20:31:14 +02:00
ap_drv_ops.c mbssid: Set extended capabilities 2022-12-02 20:21:11 +02:00
ap_drv_ops.h PASN: Configure secure ranging context to the driver in AP mode 2022-09-02 16:25:20 +03:00
ap_list.c Remove CONFIG_IEEE80211N build option 2020-02-22 19:20:44 +02: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 Move default action from after switch to within 2022-10-14 16:08:20 +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 EAP-TEAP server: Allow tunneled EAP method sequence to be optimized 2022-12-01 17:53:05 +02:00
authsrv.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
beacon.c mbssid: Process Known BSSID element 2022-12-02 20:45:05 +02:00
beacon.h PASN: Include RSNXE in the PASN negotiation 2021-01-26 23:09:36 +02: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
comeback_token.c Move SAE comeback token functionality into a separate file 2022-11-04 00:52:17 +02:00
comeback_token.h Move SAE comeback token functionality into a separate file 2022-11-04 00:52:17 +02:00
ctrl_iface_ap.c Add more nl80211 info to struct wpa_signal_info 2022-12-03 10:42:16 +02:00
ctrl_iface_ap.h Add return value to ACL functions 2022-03-24 20:53:28 +02:00
dfs.c DFS: Do not allow channel checks to go beyond the channel list 2022-11-23 22:51:50 +02:00
dfs.h DFS: Add new hostapd_is_dfs_overlap() helper 2020-03-29 21:15:16 +03:00
dhcp_snoop.c proxyarp: Fix compilation with Hotspot 2.0 disabled 2021-10-18 21:24:59 +03: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: Respond to GAS on the same channel it was received on 2022-12-18 21:07:56 +02:00
dpp_hostapd.h DPP: Allow Relay connections to Controllers to be added and removed 2022-07-25 00:23:31 +03:00
drv_callbacks.c SAE: Add an enum for defining sae_pwe parameter values 2022-11-29 20:37:23 +02:00
eap_user_db.c Check snprintf result to avoid compiler warnings 2018-12-24 11:09:22 +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 Move default action from after switch to within 2022-10-14 16:08:20 +03:00
fils_hlp.h FILS: DHCP relay for HLP requests 2017-02-01 18:17:39 +02:00
gas_query_ap.c GAS: Limit maximum comeback delay value 2022-05-08 16:41:37 +03:00
gas_query_ap.h DPP: Integration for hostapd 2017-06-19 21:13:17 +03:00
gas_serv.c DPP: Respond to GAS on the same channel it was received on 2022-12-18 21:07:56 +02:00
gas_serv.h DPP: Respond to GAS on the same channel it was received on 2022-12-18 21:07:56 +02:00
hostapd.c DFS: Clear cac_started when AP is disabled 2022-12-15 18:43:43 +02:00
hostapd.h mbssid: Add Non-Inheritance element 2022-12-02 19:40:49 +02:00
hs20.c AP: Check driver's capability to enable OCV when driver SME is used 2021-02-16 00:47:43 +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 EHT: Add 320 channel width support 2022-06-20 14:39:26 +03:00
hw_features.h hostapd: Add HE 6 GHz band capability configuration 2021-02-08 00:09:45 +02:00
ieee802_1x.c HS 2.0: Deauthenticate STA on deauth-imminent more quickly if no URL 2022-11-21 22:57:38 +02:00
ieee802_1x.h Provide information about the encryption status of received EAPOL frames 2022-05-07 21:37:03 +03:00
ieee802_11.c SAE: Make sme_sae_auth() return IE offset 2022-12-17 17:11:16 +02:00
ieee802_11.h mbssid: Process Known BSSID element 2022-12-02 20:45:05 +02:00
ieee802_11_auth.c RADIUS attributes for EAPOL-Key message details 2022-04-15 18:40:55 +03:00
ieee802_11_auth.h RADIUS ACL/PSK check during 4-way handshake 2022-04-02 17:52:32 +03:00
ieee802_11_eht.c EHT: Update EHT Operation element to P802.11be/D2.3 in AP settings 2022-12-17 20:32:15 +02:00
ieee802_11_he.c Enable TWT responder AP role only if IEEE 802.11ax/HE is enabled 2022-09-13 04:24:03 +03:00
ieee802_11_ht.c Fix a typo in a comment 2020-02-22 19:20:44 +02:00
ieee802_11_shared.c PASN: Align RSNXE with IEEE P802.11az/D7.0 definitions 2022-12-16 22:35:19 +02:00
ieee802_11_vht.c Move CHANWIDTH_* definitions from ieee80211_defs.h to defs.h 2022-06-20 14:39:18 +03:00
Makefile build: Make more library things common 2020-10-12 20:20:35 +03: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 proxyarp: Fix compilation with Hotspot 2.0 disabled 2021-10-18 21:24:59 +03:00
ndisc_snoop.h proxyarp: Use C library header files and CONFIG_IPV6 2014-11-25 16:58:21 +02:00
neighbor_db.c Use a less generic name for IEEE802.11 CRC-32 routine 2022-09-16 21:39:47 +03:00
neighbor_db.h RNR: Add bss_parameters to the neighbor_db 2021-11-08 23:39:46 +02: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 DPP: Expose enrollee pubkey hash for identification 2022-11-29 13:55:53 +02:00
pmksa_cache_auth.h DPP: Expose enrollee pubkey hash for identification 2022-11-29 13:55:53 +02:00
preauth_auth.c Provide information about the encryption status of received EAPOL frames 2022-05-07 21:37:03 +03:00
preauth_auth.h Remove the GPL notification from files contributed by Jouni Malinen 2012-02-11 19:39:36 +02:00
rrm.c hostapd: Fix a typo in function name 2019-01-02 16:40:34 +02:00
rrm.h Report beacon request TX status as control interface event 2017-01-03 16:02:58 +02:00
sta_info.c DPP: Expose enrollee pubkey hash for identification 2022-11-29 13:55:53 +02:00
sta_info.h DPP: Expose enrollee pubkey hash for identification 2022-11-29 13:55:53 +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 Add a hostapd testing option for skipping association pruning 2020-03-28 20:39:19 +02: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: Use new bridge ioctl() 2019-01-02 00:23:43 +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 Make WEP functionality an optional build parameter 2020-02-29 17:45:25 +02: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 Fix wmm compile on fedora-17 (gcc 4.7.2) 2020-02-03 02:03:32 +02:00
wmm.h Remove obsolete license notifications 2013-12-24 22:59:52 +02:00
wnm_ap.c Add BSS-TM-QUERY event to indicate reception of BSS TM Query 2022-03-24 00:56:53 +02:00
wnm_ap.h WNM: Allow specifying dialog token for BSS transition request 2021-10-22 17:11:36 +03:00
wpa_auth.c Make MFPR value from an associated STA available as hostapdMFPR 2022-12-18 21:07:56 +02:00
wpa_auth.h AP: Add testing option to delay EAPOL Tx 2022-12-02 13:07:03 +02:00
wpa_auth_ft.c SAE: Add an enum for defining sae_pwe parameter values 2022-11-29 20:37:23 +02:00
wpa_auth_glue.c AP: Add testing option to delay EAPOL Tx 2022-12-02 13:07:03 +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 Make MFPR value from an associated STA available as hostapdMFPR 2022-12-18 21:07:56 +02:00
wpa_auth_ie.c Make MFPR value from an associated STA available as hostapdMFPR 2022-12-18 21:07:56 +02:00
wpa_auth_ie.h Merge wpa_supplicant and hostapd EAPOL-Key KDE parsers 2019-10-18 13:02:27 +03:00
wpa_auth_kay.c cleanup: Remove unreachable code 2022-03-04 12:07:46 +02:00
wpa_auth_kay.h macsec: Support IEEE 802.1X(EAP)/PSK MACsec Key Agreement in hostapd 2019-06-03 20:27:44 +03:00
wps_hostapd.c Clear PSK explicitly from memory in couple more cases on deinit 2022-02-26 19:12:11 +02:00
wps_hostapd.h WPS NFC: Add AP mode connection handover report 2014-01-27 21:10:55 +02:00
x_snoop.c ProxyARP: Clear bridge parameters on deinit only if hostapd set them 2022-05-31 11:53:05 +03:00
x_snoop.h AP: Add multicast-to-unicast conversion send for "x_snoop" 2014-11-19 16:25:13 +02:00