aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorVasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>2012-03-02 05:20:02 -0500
committerJohn W. Linville <linville@tuxdriver.com>2012-03-05 15:38:34 -0500
commit1b658f118b11de3c4052ed8cbdd5803cd1fa5670 (patch)
tree162160c05d29fc99b18d1914ffe2d614f2c9af6a /include/linux
parentd665508b98d3cdbeb476e7d6848a513184a81ed0 (diff)
cfg80211: Add an attribute to set inactivity timeout in AP mode
This patch adds an attribute, NL80211_ATTR_INACTIVITY_TIMEOUT, to set the inactivity timeout which can be used to remove the station in AP mode. This can be passed in NL80211_CMD_START_AP and used by the drivers which have AP MLME in firmware but don't support get_station() properly. To disable inactivity timer in userspace, wpa_s for example, there is a new flag, NL80211_FEATURE_INACTIVITY_TIMER, in nl80211_feature_flags through which drivers can register their capability to use the inactivity timeout to free the stations. Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com> Acked-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/nl80211.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/include/linux/nl80211.h b/include/linux/nl80211.h
index 38fda5ee57f5..9f46c62b1eee 100644
--- a/include/linux/nl80211.h
+++ b/include/linux/nl80211.h
@@ -168,8 +168,8 @@
168 * %NL80211_ATTR_DTIM_PERIOD, %NL80211_ATTR_SSID, 168 * %NL80211_ATTR_DTIM_PERIOD, %NL80211_ATTR_SSID,
169 * %NL80211_ATTR_HIDDEN_SSID, %NL80211_ATTR_CIPHERS_PAIRWISE, 169 * %NL80211_ATTR_HIDDEN_SSID, %NL80211_ATTR_CIPHERS_PAIRWISE,
170 * %NL80211_ATTR_CIPHER_GROUP, %NL80211_ATTR_WPA_VERSIONS, 170 * %NL80211_ATTR_CIPHER_GROUP, %NL80211_ATTR_WPA_VERSIONS,
171 * %NL80211_ATTR_AKM_SUITES, %NL80211_ATTR_PRIVACY and 171 * %NL80211_ATTR_AKM_SUITES, %NL80211_ATTR_PRIVACY,
172 * %NL80211_ATTR_AUTH_TYPE. 172 * %NL80211_ATTR_AUTH_TYPE and %NL80211_ATTR_INACTIVITY_TIMEOUT.
173 * @NL80211_CMD_NEW_BEACON: old alias for %NL80211_CMD_START_AP 173 * @NL80211_CMD_NEW_BEACON: old alias for %NL80211_CMD_START_AP
174 * @NL80211_CMD_STOP_AP: Stop AP operation on the given interface 174 * @NL80211_CMD_STOP_AP: Stop AP operation on the given interface
175 * @NL80211_CMD_DEL_BEACON: old alias for %NL80211_CMD_STOP_AP 175 * @NL80211_CMD_DEL_BEACON: old alias for %NL80211_CMD_STOP_AP
@@ -1197,6 +1197,12 @@ enum nl80211_commands {
1197 * @NL80211_ATTR_NOACK_MAP: This u16 bitmap contains the No Ack Policy of 1197 * @NL80211_ATTR_NOACK_MAP: This u16 bitmap contains the No Ack Policy of
1198 * up to 16 TIDs. 1198 * up to 16 TIDs.
1199 * 1199 *
1200 * @NL80211_ATTR_INACTIVITY_TIMEOUT: timeout value in seconds, this can be
1201 * used by the drivers which has MLME in firmware and does not have support
1202 * to report per station tx/rx activity to free up the staion entry from
1203 * the list. This needs to be used when the driver advertises the
1204 * capability to timeout the stations.
1205 *
1200 * @NL80211_ATTR_MAX: highest attribute number currently defined 1206 * @NL80211_ATTR_MAX: highest attribute number currently defined
1201 * @__NL80211_ATTR_AFTER_LAST: internal use 1207 * @__NL80211_ATTR_AFTER_LAST: internal use
1202 */ 1208 */
@@ -1442,6 +1448,8 @@ enum nl80211_attrs {
1442 1448
1443 NL80211_ATTR_NOACK_MAP, 1449 NL80211_ATTR_NOACK_MAP,
1444 1450
1451 NL80211_ATTR_INACTIVITY_TIMEOUT,
1452
1445 /* add attributes here, update the policy in nl80211.c */ 1453 /* add attributes here, update the policy in nl80211.c */
1446 1454
1447 __NL80211_ATTR_AFTER_LAST, 1455 __NL80211_ATTR_AFTER_LAST,
@@ -2809,10 +2817,13 @@ enum nl80211_ap_sme_features {
2809 * TX status to the socket error queue when requested with the 2817 * TX status to the socket error queue when requested with the
2810 * socket option. 2818 * socket option.
2811 * @NL80211_FEATURE_HT_IBSS: This driver supports IBSS with HT datarates. 2819 * @NL80211_FEATURE_HT_IBSS: This driver supports IBSS with HT datarates.
2820 * @NL80211_FEATURE_INACTIVITY_TIMER: This driver takes care of freeing up
2821 * the connected inactive stations in AP mode.
2812 */ 2822 */
2813enum nl80211_feature_flags { 2823enum nl80211_feature_flags {
2814 NL80211_FEATURE_SK_TX_STATUS = 1 << 0, 2824 NL80211_FEATURE_SK_TX_STATUS = 1 << 0,
2815 NL80211_FEATURE_HT_IBSS = 1 << 1, 2825 NL80211_FEATURE_HT_IBSS = 1 << 1,
2826 NL80211_FEATURE_INACTIVITY_TIMER = 1 << 2,
2816}; 2827};
2817 2828
2818/** 2829/**