Date: Thu, 9 Jul 2009 13:42:18 +0000 (UTC) From: Rui Paulo <rpaulo@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r195491 - projects/mesh11s/sys/net80211 Message-ID: <200907091342.n69DgIBu086606@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: rpaulo Date: Thu Jul 9 13:42:18 2009 New Revision: 195491 URL: http://svn.freebsd.org/changeset/base/195491 Log: Set table seqno only if we didn't send one already. Sponsored by: The FreeBSD Foundation Modified: projects/mesh11s/sys/net80211/ieee80211_hwmp.c Modified: projects/mesh11s/sys/net80211/ieee80211_hwmp.c ============================================================================== --- projects/mesh11s/sys/net80211/ieee80211_hwmp.c Thu Jul 9 12:48:43 2009 (r195490) +++ projects/mesh11s/sys/net80211/ieee80211_hwmp.c Thu Jul 9 13:42:18 2009 (r195491) @@ -720,7 +720,7 @@ hwmp_recv_preq(struct ieee80211vap *vap, prep.prep_lifetime = preq->preq_lifetime; prep.prep_metric = IEEE80211_MESHLMETRIC_INITIALVAL; IEEE80211_ADDR_COPY(prep.prep_origaddr, vap->iv_myaddr); - prep.prep_origseq = hs->hs_seq++; + prep.prep_origseq = ++hs->hs_seq; hwmp_send_prep(ni, vap->iv_myaddr, wh->i_addr2, &prep); /* * Build the reverse path, if we don't have it already. @@ -983,8 +983,9 @@ hwmp_recv_prep(struct ieee80211vap *vap, } } else { IEEE80211_NOTE(vap, IEEE80211_MSG_HWMP, ni, - "discard PREP from %s, wrong seqno %u", - ether_sprintf(prep->prep_origaddr), prep->prep_targetseq); + "discard PREP from %s, wrong seqno %u != %u", + ether_sprintf(prep->prep_origaddr), prep->prep_targetseq, + hr->hr_seq); vap->iv_stats.is_hwmp_wrongseq++; } @@ -1239,8 +1240,10 @@ hwmp_discover(struct ieee80211vap *vap, hr = IEEE80211_MESH_ROUTE_PRIV(rt, struct ieee80211_hwmp_route); if (IEEE80211_ADDR_EQ(rt->rt_nexthop, invalidaddr)) { - hr->hr_seq = ++hs->hs_seq; - hr->hr_preqid = ++hs->hs_preqid; + if (hr->hr_preqid == 0) { + hr->hr_seq = ++hs->hs_seq; + hr->hr_preqid = ++hs->hs_preqid; + } rt->rt_metric = IEEE80211_MESHLMETRIC_INITIALVAL; rt->rt_lifetime = timeval2msecs(ieee80211_hwmp_pathtimeout);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200907091342.n69DgIBu086606>