*/
unsigned int non_coloc_6ghz:1;
+ /**
+ * min_probe_req_content - Minimize probe request content to only have
+ * minimal requirement elements, e.g., supported rates etc., and no
+ * additional elements other then those provided by user space.
+ */
+ unsigned int min_probe_req_content:1;
+
/*
* NOTE: Whenever adding new parameters here, please make sure
* wpa_scan_clone_params() and wpa_scan_free_params() get updated with
#define WPA_DRIVER_FLAGS2_PROT_RANGE_NEG_STA 0x0000000000002000ULL
/** Driver supports MLO in station/AP mode */
#define WPA_DRIVER_FLAGS2_MLO 0x0000000000004000ULL
+/** Driver supports minimal scan request probe content */
+#define WPA_DRIVER_FLAGS2_SCAN_MIN_PREQ 0x0000000000008000ULL
u64 flags2;
#define FULL_AP_CLIENT_STATE_SUPP(drv_flags) \
capa->flags2 |= WPA_DRIVER_FLAGS2_PROT_RANGE_NEG_STA;
capa->flags2 |= WPA_DRIVER_FLAGS2_PROT_RANGE_NEG_AP;
}
+
+ if (ext_feature_isset(ext_features, len,
+ NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT))
+ capa->flags2 |= WPA_DRIVER_FLAGS2_SCAN_MIN_PREQ;
}
NL80211_SCAN_FLAG_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION;
}
+ if (params->min_probe_req_content) {
+ if (drv->capa.flags2 & WPA_DRIVER_FLAGS2_SCAN_MIN_PREQ)
+ scan_flags |= NL80211_SCAN_FLAG_MIN_PREQ_CONTENT;
+ else
+ wpa_printf(MSG_DEBUG,
+ "nl80211: NL80211_SCAN_FLAG_MIN_PREQ_CONTENT not supported");
+ }
+
if (scan_flags &&
nla_put_u32(msg, NL80211_ATTR_SCAN_FLAGS, scan_flags))
goto fail;
params->relative_adjust_rssi = src->relative_adjust_rssi;
params->p2p_include_6ghz = src->p2p_include_6ghz;
params->non_coloc_6ghz = src->non_coloc_6ghz;
+ params->min_probe_req_content = src->min_probe_req_content;
return params;
failed: