Skip to content

Commit

Permalink
mac80211: Various small fixes for cfg.c: mpath_set_pinfo()
Browse files Browse the repository at this point in the history
Various small fixes for net/mac80211/cfg.c:mpath_set_pinfo():
Initialize *pinfo before filling members in, handle MESH_PATH_RESOLVED
correctly, and remove bogus assignment; result in correct display
of FLAGS values and meaningful EXPTIME for expired paths in iw utility.

Signed-off-by: Yoichi Shinoda <shinoda@jaist.ac.jp>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  • Loading branch information
LEO Airwarosu Yoichi Shinoda authored and Johannes Berg committed Sep 5, 2012
1 parent b4e4f47 commit 7ce8c7a
Showing 1 changed file with 4 additions and 5 deletions.
9 changes: 4 additions & 5 deletions net/mac80211/cfg.c
Original file line number Diff line number Diff line change
Expand Up @@ -1378,6 +1378,8 @@ static void mpath_set_pinfo(struct mesh_path *mpath, u8 *next_hop,
else
memset(next_hop, 0, ETH_ALEN);

memset(pinfo, 0, sizeof(*pinfo));

pinfo->generation = mesh_paths_generation;

pinfo->filled = MPATH_INFO_FRAME_QLEN |
Expand All @@ -1396,7 +1398,6 @@ static void mpath_set_pinfo(struct mesh_path *mpath, u8 *next_hop,
pinfo->discovery_timeout =
jiffies_to_msecs(mpath->discovery_timeout);
pinfo->discovery_retries = mpath->discovery_retries;
pinfo->flags = 0;
if (mpath->flags & MESH_PATH_ACTIVE)
pinfo->flags |= NL80211_MPATH_FLAG_ACTIVE;
if (mpath->flags & MESH_PATH_RESOLVING)
Expand All @@ -1405,10 +1406,8 @@ static void mpath_set_pinfo(struct mesh_path *mpath, u8 *next_hop,
pinfo->flags |= NL80211_MPATH_FLAG_SN_VALID;
if (mpath->flags & MESH_PATH_FIXED)
pinfo->flags |= NL80211_MPATH_FLAG_FIXED;
if (mpath->flags & MESH_PATH_RESOLVING)
pinfo->flags |= NL80211_MPATH_FLAG_RESOLVING;

pinfo->flags = mpath->flags;
if (mpath->flags & MESH_PATH_RESOLVED)
pinfo->flags |= NL80211_MPATH_FLAG_RESOLVED;
}

static int ieee80211_get_mpath(struct wiphy *wiphy, struct net_device *dev,
Expand Down

0 comments on commit 7ce8c7a

Please sign in to comment.