Mesh HWMP PERR bug fixes.
* When calling ieee80211_mesh_rt_flush_peer, the rt->rt_dest argument should not be passed because it can get freed before invalidating the other routes that depends on it to compare with next_hop. Use PERR_DADDR(i) instead; Approved by: adrian (mentor)
This commit is contained in:
parent
ecd76b4133
commit
6c23af63de
@ -1570,7 +1570,7 @@ hwmp_recv_perr(struct ieee80211vap *vap, struct ieee80211_node *ni,
|
|||||||
"PERR, unknown reason code %u\n", PERR_DFLAGS(i));
|
"PERR, unknown reason code %u\n", PERR_DFLAGS(i));
|
||||||
goto done; /* XXX: stats?? */
|
goto done; /* XXX: stats?? */
|
||||||
}
|
}
|
||||||
ieee80211_mesh_rt_flush_peer(vap, rt->rt_dest);
|
ieee80211_mesh_rt_flush_peer(vap, PERR_DADDR(i));
|
||||||
KASSERT(j < 32, ("PERR, error ndest >= 32 (%u)", j));
|
KASSERT(j < 32, ("PERR, error ndest >= 32 (%u)", j));
|
||||||
}
|
}
|
||||||
if (j == 0) {
|
if (j == 0) {
|
||||||
|
Loading…
Reference in New Issue
Block a user