|
@@ -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 |
|
|
@@ -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)
|
|
@@ -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,
|