if (val < 0 || val > 1)
return 1;
bss->ssid_protection = val;
+ } else if (os_strcmp(buf, "channel_usage") == 0) {
+ conf->channel_usage = atoi(pos);
+ } else if (os_strcmp(buf, "peer_to_peer_twt") == 0) {
+ conf->peer_to_peer_twt = atoi(pos);
#ifdef CONFIG_IEEE80211BE
} else if (os_strcmp(buf, "ieee80211be") == 0) {
conf->ieee80211be = atoi(pos);
# Valid range: 0..20 TUs; default is 0 (disabled)
#unsol_bcast_probe_resp_interval=0
+#channel_usage: Whether Channel Usage procedures is supported by AP.
+# 0 = Channel Usage support is disabled (default)
+# 1 = Channel Usage support is enabled
+#channel_usage=0
+
+#peer_to_peer_twt: Indicates an HE AP supports negotiating a peer-to-peer
+# TWT schedule that is requested by a non-AP STA to establish a
+# channel-usage-aidable BSS or an off-channel TDLS direct link.
+# 0 = Does not support Peer-to-peer TWT (default)
+# 1 = Supports Peer-to-peer TWT
+#peer_to_peer_twt=0
+
##### IEEE 802.11be related configuration #####################################
#ieee80211be: Whether IEEE 802.11be (EHT) is enabled
/* Whether to enable TWT responder in HT and VHT modes */
bool ht_vht_twt_responder;
+
+ bool channel_usage;
+ bool peer_to_peer_twt;
};
*pos |= 0x01; /* Bit 88 - SAE PK Exclusively */
#endif /* CONFIG_SAE_PK */
break;
+ case 12: /* Bits 96-103 */
+ if (hapd->iconf->peer_to_peer_twt)
+ *pos |= 0x10; /* Bit 100 - Peer to Peer TWT */
+ break;
+ case 13: /* Bits 104-111 */
+ if (hapd->iconf->channel_usage)
+ *pos |= 0x01; /* Bit 104 - Channel Usage support */
+ break;
}
}
{ INT(gas_address3), 0 },
{ INT_RANGE(ftm_responder, 0, 1), 0 },
{ INT_RANGE(ftm_initiator, 0, 1), 0 },
+ { INT_RANGE(twt_requester, 0, 1), 0 },
{ INT(gas_rand_addr_lifetime), 0 },
{ INT_RANGE(gas_rand_mac_addr, 0, 2), 0 },
#ifdef CONFIG_DPP
* This is the head for the list of all the paired devices.
*/
struct wpa_dev_ik *identity;
+
+ /**
+ * twt_requester - Whether TWT Requester Support is enabled
+ *
+ * This is for setting the bit 77 of the Extended Capabilities element.
+ */
+ bool twt_requester;
};
if (config->ftm_initiator)
fprintf(f, "ftm_initiator=%d\n", config->ftm_initiator);
+ if (config->twt_requester)
+ fprintf(f, "twt_requester=%d\n", config->twt_requester);
+
if (config->osu_dir)
fprintf(f, "osu_dir=%s\n", config->osu_dir);
if (!wpa_s->disable_fils)
*pos |= 0x01;
#endif /* CONFIG_FILS */
+ if (wpa_s->conf->twt_requester)
+ *pos |= 0x20; /* Bit 77 - TWT Requester Support */
break;
case 10: /* Bits 80-87 */
#ifndef CONFIG_NO_ROBUST_AV
# 1 = Publish
#ftm_initiator=0
+#twt_requester: Whether TWT requester is enabled
+# 0 = disabled (default)
+# 1 = enabled if supported by the driver
+#twt_requester=0
+
# credential block
#
# Each credential used for automatic network selection is configured as a set