aboutsummaryrefslogtreecommitdiffstats
path: root/wpa_supplicant/config.h
diff options
context:
space:
mode:
authorJouni Malinen <jouni@qca.qualcomm.com>2016-06-10 17:58:23 (GMT)
committerJouni Malinen <j@w1.fi>2016-06-10 18:44:49 (GMT)
commitc86bef2913a6aa9947d45e8d28bb0539c2d5c25c (patch)
treea2f83f63121967953f359eb8580717d2d0ee9c08 /wpa_supplicant/config.h
parent739fd20cc3f922c06b69d8d730e73909db4151c9 (diff)
downloadhostap-c86bef2913a6aa9947d45e8d28bb0539c2d5c25c.zip
hostap-c86bef2913a6aa9947d45e8d28bb0539c2d5c25c.tar.gz
hostap-c86bef2913a6aa9947d45e8d28bb0539c2d5c25c.tar.bz2
wpa_supplicant: Make GAS Address3 field selection behavior configurable
IEEE Std 802.11-2012, 10.19 (Public Action frame addressing) specifies that the wildcard BSSID value is used in Public Action frames that are transmitted to a STA that is not a member of the same BSS. wpa_supplicant used to use the actual BSSID value for all such frames regardless of whether the destination STA is a member of the BSS. P2P does not follow this rule, so P2P Public Action frame construction must not be changed. However, the cases using GAS/ANQP for non-P2P purposes should follow the standard requirements. Unfortunately, there are deployed AP implementations that do not reply to a GAS request sent using the wildcard BSSID value. The previously used behavior (Address3 = AP BSSID even when not associated) continues to be the default, but the IEEE 802.11 standard compliant addressing behavior can now be configured with gas_address3=1. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
Diffstat (limited to 'wpa_supplicant/config.h')
-rw-r--r--wpa_supplicant/config.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/wpa_supplicant/config.h b/wpa_supplicant/config.h
index 786b85a..1535738 100644
--- a/wpa_supplicant/config.h
+++ b/wpa_supplicant/config.h
@@ -1292,6 +1292,16 @@ struct wpa_config {
*/
enum mbo_cellular_capa mbo_cell_capa;
#endif /* CONFIG_MBO */
+
+ /**
+ * gas_address3 - GAS Address3 field behavior
+ *
+ * Values:
+ * 0 - P2P specification (Address3 = AP BSSID)
+ * 1 = IEEE 802.11 standard compliant (Address3 = Wildcard BSSID when
+ * sent to not-associated AP; if associated, AP BSSID)
+ */
+ int gas_address3;
};