History

nl80211: Add FILS discovery support

FILS discovery attribute, NL80211_ATTR_FILS_DISCOVERY, is nested which supports following parameters as given in IEEE Std 802.11ai-2016, Annex C.3 MIB detail: (1) NL80211_FILS_DISCOVERY_ATTR_INT_MIN - Minimum packet interval (2) NL80211_FILS_DISCOVERY_ATTR_INT_MAX - Maximum packet interval (3) NL80211_FILS_DISCOVERY_ATTR_TMPL - Template data

Aloka Dixit committed 6 years ago

Commit 291c49d1 parent 55958703 files · +112 −0Browse files

Showing the changes to include/uapi (1 of 3 files). Show all

Unified · Split

include/uapi/linux/nl80211.h+44−0
@@ -2513,6 +2513,10 @@ enum nl80211_commands { · 2512 unmodified lines
2513 * @NL80211_ATTR_HE_6GHZ_CAPABILITY: HE 6 GHz Band Capability element (from2513 * @NL80211_ATTR_HE_6GHZ_CAPABILITY: HE 6 GHz Band Capability element (from
2514 * association request when used with NL80211_CMD_NEW_STATION).2514 * association request when used with NL80211_CMD_NEW_STATION).
2515 *2515 *
2516 * @NL80211_ATTR_FILS_DISCOVERY: Optional parameter to configure FILS
2517 * discovery. It is a nested attribute, see
2518 * &enum nl80211_fils_discovery_attributes.
2519 *
2516 * @NUM_NL80211_ATTR: total number of nl80211_attrs available2520 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
2517 * @NL80211_ATTR_MAX: highest attribute number currently defined2521 * @NL80211_ATTR_MAX: highest attribute number currently defined
2518 * @__NL80211_ATTR_AFTER_LAST: internal use2522 * @__NL80211_ATTR_AFTER_LAST: internal use
@@ -2995,6 +2999,8 @@ enum nl80211_attrs { · 476 unmodified lines
2995 2999
2996 NL80211_ATTR_HE_6GHZ_CAPABILITY,3000 NL80211_ATTR_HE_6GHZ_CAPABILITY,
2997 3001
3002 NL80211_ATTR_FILS_DISCOVERY,
3003
2998 /* add attributes here, update the policy in nl80211.c */3004 /* add attributes here, update the policy in nl80211.c */
2999 3005
3000 __NL80211_ATTR_AFTER_LAST,3006 __NL80211_ATTR_AFTER_LAST,
@@ -5867,6 +5873,9 @@ enum nl80211_feature_flags { · 2866 unmodified lines
5867 * @NL80211_EXT_FEATURE_SAE_OFFLOAD_AP: Device wants to do SAE authentication5873 * @NL80211_EXT_FEATURE_SAE_OFFLOAD_AP: Device wants to do SAE authentication
5868 * in AP mode (SAE password is passed as part of the start AP command).5874 * in AP mode (SAE password is passed as part of the start AP command).
5869 *5875 *
5876 * @NL80211_EXT_FEATURE_FILS_DISCOVERY: Driver/device supports FILS discovery
5877 * frames transmission
5878 *
5870 * @NUM_NL80211_EXT_FEATURES: number of extended features.5879 * @NUM_NL80211_EXT_FEATURES: number of extended features.
5871 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.5880 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
5872 */5881 */
@@ -5925,6 +5934,7 @@ enum nl80211_ext_feature_index { · 52 unmodified lines
5925 NL80211_EXT_FEATURE_OPERATING_CHANNEL_VALIDATION,5934 NL80211_EXT_FEATURE_OPERATING_CHANNEL_VALIDATION,
5926 NL80211_EXT_FEATURE_4WAY_HANDSHAKE_AP_PSK,5935 NL80211_EXT_FEATURE_4WAY_HANDSHAKE_AP_PSK,
5927 NL80211_EXT_FEATURE_SAE_OFFLOAD_AP,5936 NL80211_EXT_FEATURE_SAE_OFFLOAD_AP,
5937 NL80211_EXT_FEATURE_FILS_DISCOVERY,
5928 5938
5929 /* add new features before the definition below */5939 /* add new features before the definition below */
5930 NUM_NL80211_EXT_FEATURES,5940 NUM_NL80211_EXT_FEATURES,
@@ -7019,4 +7029,38 @@ enum nl80211_iftype_akm_attributes { · 1088 unmodified lines
7019 NL80211_IFTYPE_AKM_ATTR_MAX = __NL80211_IFTYPE_AKM_ATTR_LAST - 1,7029 NL80211_IFTYPE_AKM_ATTR_MAX = __NL80211_IFTYPE_AKM_ATTR_LAST - 1,
7020};7030};
7021 7031
7032/**
7033 * enum nl80211_fils_discovery_attributes - FILS discovery configuration
7034 * from IEEE Std 802.11ai-2016, Annex C.3 MIB detail.
7035 *
7036 * @__NL80211_FILS_DISCOVERY_ATTR_INVALID: Invalid
7037 *
7038 * @NL80211_FILS_DISCOVERY_ATTR_INT_MIN: Minimum packet interval (u32, TU).
7039 * Allowed range: 0..10000 (TU = Time Unit)
7040 * @NL80211_FILS_DISCOVERY_ATTR_INT_MAX: Maximum packet interval (u32, TU).
7041 * Allowed range: 0..10000 (TU = Time Unit)
7042 * @NL80211_FILS_DISCOVERY_ATTR_TMPL: Template data for FILS discovery action
7043 * frame including the headers.
7044 *
7045 * @__NL80211_FILS_DISCOVERY_ATTR_LAST: Internal
7046 * @NL80211_FILS_DISCOVERY_ATTR_MAX: highest attribute
7047 */
7048enum nl80211_fils_discovery_attributes {
7049 __NL80211_FILS_DISCOVERY_ATTR_INVALID,
7050
7051 NL80211_FILS_DISCOVERY_ATTR_INT_MIN,
7052 NL80211_FILS_DISCOVERY_ATTR_INT_MAX,
7053 NL80211_FILS_DISCOVERY_ATTR_TMPL,
7054
7055 /* keep last */
7056 __NL80211_FILS_DISCOVERY_ATTR_LAST,
7057 NL80211_FILS_DISCOVERY_ATTR_MAX = __NL80211_FILS_DISCOVERY_ATTR_LAST - 1
7058};
7059
7060/*
7061 * FILS discovery template minimum length with action frame headers and
7062 * mandatory fields.
7063 */
7064#define NL80211_FILS_DISCOVERY_TMPL_MIN_LEN 42
7065
7022#endif /* __LINUX_NL80211_H */7066#endif /* __LINUX_NL80211_H */