|
@@ -769,6 +769,8 @@ enum nl80211_commands {
|
|
|
* that can be added to a scan request
|
|
|
* @NL80211_ATTR_MAX_SCHED_SCAN_IE_LEN: maximum length of information
|
|
|
* elements that can be added to a scheduled scan request
|
|
|
+ * @NL80211_ATTR_MAX_MATCH_SETS: maximum number of sets that can be
|
|
|
+ * used with @NL80211_ATTR_SCHED_SCAN_MATCH, a wiphy attribute.
|
|
|
*
|
|
|
* @NL80211_ATTR_SCAN_FREQUENCIES: nested attribute with frequencies (in MHz)
|
|
|
* @NL80211_ATTR_SCAN_SSIDS: nested attribute with SSIDs, leave out for passive
|
|
@@ -1011,6 +1013,24 @@ enum nl80211_commands {
|
|
|
|
|
|
* @NL80211_ATTR_SCHED_SCAN_INTERVAL: Interval between scheduled scan
|
|
|
* cycles, in msecs.
|
|
|
+
|
|
|
+ * @NL80211_ATTR_SCHED_SCAN_MATCH: Nested attribute with one or more
|
|
|
+ * sets of attributes to match during scheduled scans. Only BSSs
|
|
|
+ * that match any of the sets will be reported. These are
|
|
|
+ * pass-thru filter rules.
|
|
|
+ * For a match to succeed, the BSS must match all attributes of a
|
|
|
+ * set. Since not every hardware supports matching all types of
|
|
|
+ * attributes, there is no guarantee that the reported BSSs are
|
|
|
+ * fully complying with the match sets and userspace needs to be
|
|
|
+ * able to ignore them by itself.
|
|
|
+ * Thus, the implementation is somewhat hardware-dependent, but
|
|
|
+ * this is only an optimization and the userspace application
|
|
|
+ * needs to handle all the non-filtered results anyway.
|
|
|
+ * If the match attributes don't make sense when combined with
|
|
|
+ * the values passed in @NL80211_ATTR_SCAN_SSIDS (eg. if an SSID
|
|
|
+ * is included in the probe request, but the match attributes
|
|
|
+ * will never let it go through), -EINVAL may be returned.
|
|
|
+ * If ommited, no filtering is done.
|
|
|
*
|
|
|
* @NL80211_ATTR_INTERFACE_COMBINATIONS: Nested attribute listing the supported
|
|
|
* interface combinations. In each nested item, it contains attributes
|
|
@@ -1042,6 +1062,14 @@ enum nl80211_commands {
|
|
|
* (Re)Association Response frames when the driver (or firmware) replies to
|
|
|
* (Re)Association Request frames.
|
|
|
*
|
|
|
+ * @NL80211_ATTR_STA_WME: Nested attribute containing the wme configuration
|
|
|
+ * of the station, see &enum nl80211_sta_wme_attr.
|
|
|
+ * @NL80211_ATTR_SUPPORT_AP_UAPSD: the device supports uapsd when working
|
|
|
+ * as AP.
|
|
|
+ *
|
|
|
+ * @NL80211_ATTR_ROAM_SUPPORT: Indicates whether the firmware is capable of
|
|
|
+ * roaming to another AP in the same ESS if the signal lever is low.
|
|
|
+ *
|
|
|
* @NL80211_ATTR_MAX: highest attribute number currently defined
|
|
|
* @__NL80211_ATTR_AFTER_LAST: internal use
|
|
|
*/
|
|
@@ -1252,6 +1280,14 @@ enum nl80211_attrs {
|
|
|
NL80211_ATTR_IE_PROBE_RESP,
|
|
|
NL80211_ATTR_IE_ASSOC_RESP,
|
|
|
|
|
|
+ NL80211_ATTR_STA_WME,
|
|
|
+ NL80211_ATTR_SUPPORT_AP_UAPSD,
|
|
|
+
|
|
|
+ NL80211_ATTR_ROAM_SUPPORT,
|
|
|
+
|
|
|
+ NL80211_ATTR_SCHED_SCAN_MATCH,
|
|
|
+ NL80211_ATTR_MAX_MATCH_SETS,
|
|
|
+
|
|
|
/* add attributes here, update the policy in nl80211.c */
|
|
|
|
|
|
__NL80211_ATTR_AFTER_LAST,
|
|
@@ -1710,6 +1746,26 @@ enum nl80211_reg_rule_attr {
|
|
|
NL80211_REG_RULE_ATTR_MAX = __NL80211_REG_RULE_ATTR_AFTER_LAST - 1
|
|
|
};
|
|
|
|
|
|
+/**
|
|
|
+ * enum nl80211_sched_scan_match_attr - scheduled scan match attributes
|
|
|
+ * @__NL80211_SCHED_SCAN_MATCH_ATTR_INVALID: attribute number 0 is reserved
|
|
|
+ * @NL80211_SCHED_SCAN_MATCH_ATTR_SSID: SSID to be used for matching,
|
|
|
+ * only report BSS with matching SSID.
|
|
|
+ * @NL80211_SCHED_SCAN_MATCH_ATTR_MAX: highest scheduled scan filter
|
|
|
+ * attribute number currently defined
|
|
|
+ * @__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST: internal use
|
|
|
+ */
|
|
|
+enum nl80211_sched_scan_match_attr {
|
|
|
+ __NL80211_SCHED_SCAN_MATCH_ATTR_INVALID,
|
|
|
+
|
|
|
+ NL80211_ATTR_SCHED_SCAN_MATCH_SSID,
|
|
|
+
|
|
|
+ /* keep last */
|
|
|
+ __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST,
|
|
|
+ NL80211_SCHED_SCAN_MATCH_ATTR_MAX =
|
|
|
+ __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST - 1
|
|
|
+};
|
|
|
+
|
|
|
/**
|
|
|
* enum nl80211_reg_rule_flags - regulatory rule flags
|
|
|
*
|
|
@@ -2482,4 +2538,22 @@ enum nl80211_hidden_ssid {
|
|
|
NL80211_HIDDEN_SSID_ZERO_CONTENTS
|
|
|
};
|
|
|
|
|
|
+/**
|
|
|
+ * enum nl80211_sta_wme_attr - station WME attributes
|
|
|
+ * @__NL80211_STA_WME_INVALID: invalid number for nested attribute
|
|
|
+ * @NL80211_STA_WME_QUEUES: bitmap of uapsd queues.
|
|
|
+ * @NL80211_STA_WME_MAX_SP: max service period.
|
|
|
+ * @__NL80211_STA_WME_AFTER_LAST: internal
|
|
|
+ * @NL80211_STA_WME_MAX: highest station WME attribute
|
|
|
+ */
|
|
|
+enum nl80211_sta_wme_attr {
|
|
|
+ __NL80211_STA_WME_INVALID,
|
|
|
+ NL80211_STA_WME_UAPSD_QUEUES,
|
|
|
+ NL80211_STA_WME_MAX_SP,
|
|
|
+
|
|
|
+ /* keep last */
|
|
|
+ __NL80211_STA_WME_AFTER_LAST,
|
|
|
+ NL80211_STA_WME_MAX = __NL80211_STA_WME_AFTER_LAST - 1
|
|
|
+};
|
|
|
+
|
|
|
#endif /* __LINUX_NL80211_H */
|