diff options
author | Javier Cardona <javier@cozybit.com> | 2011-08-09 19:45:10 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-08-24 13:59:43 -0400 |
commit | 0507e159a2b590666982b53ecf6fb2843a5bb423 (patch) | |
tree | a5c0aefae3ea789fb1b0ef9019372e534b93aecc /net/wireless/nl80211.c | |
parent | 699403dbd41998a56d1d92d612ac261e5085a99f (diff) |
{nl,cfg,mac}80211: let userspace set RANN interval
Allow userspace to set Root Announcement Interval for our mesh
interface. Also, RANN interval is now in proper units of TUs.
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/wireless/nl80211.c')
-rw-r--r-- | net/wireless/nl80211.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index 93ee888b1059..bbf3d7384a6b 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c | |||
@@ -3035,6 +3035,8 @@ static int nl80211_get_mesh_config(struct sk_buff *skb, | |||
3035 | cur_params.dot11MeshHWMPnetDiameterTraversalTime); | 3035 | cur_params.dot11MeshHWMPnetDiameterTraversalTime); |
3036 | NLA_PUT_U8(msg, NL80211_MESHCONF_HWMP_ROOTMODE, | 3036 | NLA_PUT_U8(msg, NL80211_MESHCONF_HWMP_ROOTMODE, |
3037 | cur_params.dot11MeshHWMPRootMode); | 3037 | cur_params.dot11MeshHWMPRootMode); |
3038 | NLA_PUT_U16(msg, NL80211_MESHCONF_HWMP_RANN_INTERVAL, | ||
3039 | cur_params.dot11MeshHWMPRannInterval); | ||
3038 | nla_nest_end(msg, pinfoattr); | 3040 | nla_nest_end(msg, pinfoattr); |
3039 | genlmsg_end(msg, hdr); | 3041 | genlmsg_end(msg, hdr); |
3040 | return genlmsg_reply(msg, info); | 3042 | return genlmsg_reply(msg, info); |
@@ -3063,6 +3065,7 @@ static const struct nla_policy nl80211_meshconf_params_policy[NL80211_MESHCONF_A | |||
3063 | [NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL] = { .type = NLA_U16 }, | 3065 | [NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL] = { .type = NLA_U16 }, |
3064 | [NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME] = { .type = NLA_U16 }, | 3066 | [NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME] = { .type = NLA_U16 }, |
3065 | [NL80211_MESHCONF_HWMP_ROOTMODE] = { .type = NLA_U8 }, | 3067 | [NL80211_MESHCONF_HWMP_ROOTMODE] = { .type = NLA_U8 }, |
3068 | [NL80211_MESHCONF_HWMP_RANN_INTERVAL] = { .type = NLA_U16 }, | ||
3066 | }; | 3069 | }; |
3067 | 3070 | ||
3068 | static const struct nla_policy | 3071 | static const struct nla_policy |
@@ -3141,6 +3144,10 @@ do {\ | |||
3141 | dot11MeshHWMPRootMode, mask, | 3144 | dot11MeshHWMPRootMode, mask, |
3142 | NL80211_MESHCONF_HWMP_ROOTMODE, | 3145 | NL80211_MESHCONF_HWMP_ROOTMODE, |
3143 | nla_get_u8); | 3146 | nla_get_u8); |
3147 | FILL_IN_MESH_PARAM_IF_SET(tb, cfg, | ||
3148 | dot11MeshHWMPRannInterval, mask, | ||
3149 | NL80211_MESHCONF_HWMP_RANN_INTERVAL, | ||
3150 | nla_get_u16); | ||
3144 | if (mask_out) | 3151 | if (mask_out) |
3145 | *mask_out = mask; | 3152 | *mask_out = mask; |
3146 | 3153 | ||