diff options
author | Javier Cardona <javier@cozybit.com> | 2012-03-31 14:31:33 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-04-10 15:20:33 -0400 |
commit | d299a1f21ea7ffd5114d099b2f92c867c495e8b3 (patch) | |
tree | 4325e83c1ad096be0d2fa71c52d1ad115ea23ca4 /net/mac80211/cfg.c | |
parent | dbf498fbafa2c23139d5a990e94ed78bafbbea19 (diff) |
{nl,cfg}80211: Support for mesh synchronization
Report Toffset to userspace.
Let userspace select the mesh synchronization method.
Signed-off-by: Marco Porsch <marco.porsch@s2005.tu-chemnitz.de>
Signed-off-by: Pavel Zubarev <pavel.zubarev@gmail.com>
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/cfg.c')
-rw-r--r-- | net/mac80211/cfg.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c index 12226b7743c6..83e08dcb2f5d 100644 --- a/net/mac80211/cfg.c +++ b/net/mac80211/cfg.c | |||
@@ -412,6 +412,10 @@ static void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo) | |||
412 | sinfo->llid = le16_to_cpu(sta->llid); | 412 | sinfo->llid = le16_to_cpu(sta->llid); |
413 | sinfo->plid = le16_to_cpu(sta->plid); | 413 | sinfo->plid = le16_to_cpu(sta->plid); |
414 | sinfo->plink_state = sta->plink_state; | 414 | sinfo->plink_state = sta->plink_state; |
415 | if (test_sta_flag(sta, WLAN_STA_TOFFSET_KNOWN)) { | ||
416 | sinfo->filled |= STATION_INFO_T_OFFSET; | ||
417 | sinfo->t_offset = sta->t_offset; | ||
418 | } | ||
415 | #endif | 419 | #endif |
416 | } | 420 | } |
417 | 421 | ||
@@ -1235,6 +1239,7 @@ static int copy_mesh_setup(struct ieee80211_if_mesh *ifmsh, | |||
1235 | /* now copy the rest of the setup parameters */ | 1239 | /* now copy the rest of the setup parameters */ |
1236 | ifmsh->mesh_id_len = setup->mesh_id_len; | 1240 | ifmsh->mesh_id_len = setup->mesh_id_len; |
1237 | memcpy(ifmsh->mesh_id, setup->mesh_id, ifmsh->mesh_id_len); | 1241 | memcpy(ifmsh->mesh_id, setup->mesh_id, ifmsh->mesh_id_len); |
1242 | ifmsh->mesh_sp_id = setup->sync_method; | ||
1238 | ifmsh->mesh_pp_id = setup->path_sel_proto; | 1243 | ifmsh->mesh_pp_id = setup->path_sel_proto; |
1239 | ifmsh->mesh_pm_id = setup->path_metric; | 1244 | ifmsh->mesh_pm_id = setup->path_metric; |
1240 | ifmsh->security = IEEE80211_MESH_SEC_NONE; | 1245 | ifmsh->security = IEEE80211_MESH_SEC_NONE; |
@@ -1279,6 +1284,9 @@ static int ieee80211_update_mesh_config(struct wiphy *wiphy, | |||
1279 | conf->dot11MeshTTL = nconf->element_ttl; | 1284 | conf->dot11MeshTTL = nconf->element_ttl; |
1280 | if (_chg_mesh_attr(NL80211_MESHCONF_AUTO_OPEN_PLINKS, mask)) | 1285 | if (_chg_mesh_attr(NL80211_MESHCONF_AUTO_OPEN_PLINKS, mask)) |
1281 | conf->auto_open_plinks = nconf->auto_open_plinks; | 1286 | conf->auto_open_plinks = nconf->auto_open_plinks; |
1287 | if (_chg_mesh_attr(NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR, mask)) | ||
1288 | conf->dot11MeshNbrOffsetMaxNeighbor = | ||
1289 | nconf->dot11MeshNbrOffsetMaxNeighbor; | ||
1282 | if (_chg_mesh_attr(NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES, mask)) | 1290 | if (_chg_mesh_attr(NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES, mask)) |
1283 | conf->dot11MeshHWMPmaxPREQretries = | 1291 | conf->dot11MeshHWMPmaxPREQretries = |
1284 | nconf->dot11MeshHWMPmaxPREQretries; | 1292 | nconf->dot11MeshHWMPmaxPREQretries; |