diff options
author | monthadar <monthadar@FreeBSD.org> | 2012-05-01 15:47:30 +0000 |
---|---|---|
committer | monthadar <monthadar@FreeBSD.org> | 2012-05-01 15:47:30 +0000 |
commit | 661f0aa0b474eeb0e2188d7c75ce16dbe34a0229 (patch) | |
tree | 65098c124ba0f2f21be8fe1f8be7ee9c5ab321af /sys/net80211/ieee80211_ddb.c | |
parent | 6b5007d019c581519337942352d927a5c7de4f19 (diff) | |
download | FreeBSD-src-661f0aa0b474eeb0e2188d7c75ce16dbe34a0229.zip FreeBSD-src-661f0aa0b474eeb0e2188d7c75ce16dbe34a0229.tar.gz |
Implemented so that Mesh forwarding information lifetime is dynamic.
* Introduced ieee80211_mesh_rt_update that updates a route with the
maximum(lifetime left, new lifetime);
* Modified ieee80211_mesh_route struct by adding a lock that will be used
by both ieee80211_mesh_rt_update and precursor code (added in future commit);
* Modified in ieee80211_hwmp.c HWMP code to use new ieee80211_mesh_rt_update;
* Modified mesh_rt_flush_invalid to use new ieee80211_mesh_rt_update;
* mesh_rt_flush also checks that lifetime == 0, this gives route discovery
a change to complete;
* Modified mesh_recv_mgmt case IEEE80211_FC0_SUBTYPE_BEACON:
when ever we received a beacon from a neighbor we update route lifetime;
Approved by: adrian
Diffstat (limited to 'sys/net80211/ieee80211_ddb.c')
-rw-r--r-- | sys/net80211/ieee80211_ddb.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/net80211/ieee80211_ddb.c b/sys/net80211/ieee80211_ddb.c index 9fd8362..c869571 100644 --- a/sys/net80211/ieee80211_ddb.c +++ b/sys/net80211/ieee80211_ddb.c @@ -870,8 +870,10 @@ _db_show_mesh(const struct ieee80211_mesh_state *ms) TAILQ_FOREACH(rt, &ms->ms_routes, rt_next) { db_printf("entry %d:\tdest: %6D nexthop: %6D metric: %u", i, rt->rt_dest, ":", rt->rt_nexthop, ":", rt->rt_metric); + db_printf("\tlifetime: %u lastseq: %u priv: %p\n", - rt->rt_lifetime, rt->rt_lastmseq, rt->rt_priv); + ieee80211_mesh_rt_update(rt, 0), + rt->rt_lastmseq, rt->rt_priv); i++; } } |