diff options
author | Colleen Twitty <colleen@cozybit.com> | 2013-06-03 12:53:39 -0400 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-06-11 08:16:29 -0400 |
commit | 8e7c053853b7d299e8a2b8733659b0df8eee51f7 (patch) | |
tree | eec28175ba2437205a7376db82cb0eeafdced0a7 /include | |
parent | a0a2af765543a96bdf188ec57dd201e708195302 (diff) |
{nl,cfg}80211: make peer link expiration time configurable
If a STA has a peer that it hasn't seen any tx activity
from for a certain length of time, the peer link is
expired. This means the inactive STA is removed from the
list of peers and that STA is not considered a peer again
unless it re-peers. Previously, this inactivity time was
always 30 minutes. Now, add it to the mesh configuration
and allow it to be configured. Retain 30 minutes as a
default value.
Signed-off-by: Colleen Twitty <colleen@cozybit.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/cfg80211.h | 4 | ||||
-rw-r--r-- | include/uapi/linux/nl80211.h | 5 |
2 files changed, 9 insertions, 0 deletions
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 855c76ccff38..31ca11672ca8 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h | |||
@@ -1124,6 +1124,9 @@ struct bss_parameters { | |||
1124 | * setting for new peer links. | 1124 | * setting for new peer links. |
1125 | * @dot11MeshAwakeWindowDuration: The duration in TUs the STA will remain awake | 1125 | * @dot11MeshAwakeWindowDuration: The duration in TUs the STA will remain awake |
1126 | * after transmitting its beacon. | 1126 | * after transmitting its beacon. |
1127 | * @plink_timeout: If no tx activity is seen from a STA we've established | ||
1128 | * peering with for longer than this time (in seconds), then remove it | ||
1129 | * from the STA's list of peers. Default is 30 minutes. | ||
1127 | */ | 1130 | */ |
1128 | struct mesh_config { | 1131 | struct mesh_config { |
1129 | u16 dot11MeshRetryTimeout; | 1132 | u16 dot11MeshRetryTimeout; |
@@ -1153,6 +1156,7 @@ struct mesh_config { | |||
1153 | u16 dot11MeshHWMPconfirmationInterval; | 1156 | u16 dot11MeshHWMPconfirmationInterval; |
1154 | enum nl80211_mesh_power_mode power_mode; | 1157 | enum nl80211_mesh_power_mode power_mode; |
1155 | u16 dot11MeshAwakeWindowDuration; | 1158 | u16 dot11MeshAwakeWindowDuration; |
1159 | u32 plink_timeout; | ||
1156 | }; | 1160 | }; |
1157 | 1161 | ||
1158 | /** | 1162 | /** |
diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h index 1f0019d4cce6..ca6facf4df0c 100644 --- a/include/uapi/linux/nl80211.h +++ b/include/uapi/linux/nl80211.h | |||
@@ -2577,6 +2577,10 @@ enum nl80211_mesh_power_mode { | |||
2577 | * | 2577 | * |
2578 | * @NL80211_MESHCONF_AWAKE_WINDOW: awake window duration (in TUs) | 2578 | * @NL80211_MESHCONF_AWAKE_WINDOW: awake window duration (in TUs) |
2579 | * | 2579 | * |
2580 | * @NL80211_MESHCONF_PLINK_TIMEOUT: If no tx activity is seen from a STA we've | ||
2581 | * established peering with for longer than this time (in seconds), then | ||
2582 | * remove it from the STA's list of peers. Default is 30 minutes. | ||
2583 | * | ||
2580 | * @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use | 2584 | * @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use |
2581 | */ | 2585 | */ |
2582 | enum nl80211_meshconf_params { | 2586 | enum nl80211_meshconf_params { |
@@ -2608,6 +2612,7 @@ enum nl80211_meshconf_params { | |||
2608 | NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL, | 2612 | NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL, |
2609 | NL80211_MESHCONF_POWER_MODE, | 2613 | NL80211_MESHCONF_POWER_MODE, |
2610 | NL80211_MESHCONF_AWAKE_WINDOW, | 2614 | NL80211_MESHCONF_AWAKE_WINDOW, |
2615 | NL80211_MESHCONF_PLINK_TIMEOUT, | ||
2611 | 2616 | ||
2612 | /* keep last */ | 2617 | /* keep last */ |
2613 | __NL80211_MESHCONF_ATTR_AFTER_LAST, | 2618 | __NL80211_MESHCONF_ATTR_AFTER_LAST, |