All of lore.kernel.org
 help / color / mirror / Atom feed
* diff --git a/net/mac80211/mesh_hwmp.c b/net/mac80211/mesh_hwmp.c
@ 2009-08-11 10:22 David Woo
  2009-08-11 10:50 ` Johannes Berg
  0 siblings, 1 reply; 10+ messages in thread
From: David Woo @ 2009-08-11 10:22 UTC (permalink / raw)
  To: javier; +Cc: linux-wireless, andrey, johannes, linville, devel

 static void hwmp_preq_frame_process(struct ieee80211_sub_if_data *sdata,
 				    struct ieee80211_mgmt *mgmt,
-				    u8 *preq_elem, u32 metric)
-{
+				    u8 *preq_elem, u32 metric) {
 	struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
 	struct mesh_path *mpath;
 	u8 *dst_addr, *orig_addr;
@@ -431,7 +430,7 @@ static void hwmp_preq_frame_process(struct ieee80211_sub_if_data *sdata,
 			if ((!(mpath->flags & MESH_PATH_DSN_VALID)) ||
 					DSN_LT(mpath->dsn, dst_dsn)) {
 				mpath->dsn = dst_dsn;
-				mpath->flags |= MESH_PATH_DSN_VALID;
+				mpath->flags &= MESH_PATH_DSN_VALID;
 			} else if ((!(dst_flags & MP_F_DO)) &&
 					(mpath->flags & MESH_PATH_ACTIVE)) {
 				reply = true;
@@ -448,15 +447,14 @@ static void hwmp_preq_frame_process(struct ieee80211_sub_if_data *sdata,
 
 	if (reply) {
 		lifetime = PREQ_IE_LIFETIME(preq_elem);
-		ttl = PREQ_IE_TTL(preq_elem);
-		if (ttl != 0) {
-			ttl = ifmsh->mshcfg.dot11MeshTTL;
+		ttl = ifmsh->mshcfg.dot11MeshTTL;
+		if (ttl != 0)
 			mesh_path_sel_frame_tx(MPATH_PREP, 0, dst_addr,
 				cpu_to_le32(dst_dsn), 0, orig_addr,
 				cpu_to_le32(orig_dsn), mgmt->sa, 0, ttl,
 				cpu_to_le32(lifetime), cpu_to_le32(metric),
 				0, sdata);
-		} else
+		else
 			ifmsh->mshstats.dropped_frames_ttl++;
 	}
 
diff --git a/net/mac80211/mesh_plink.c b/net/mac80211/mesh_plink.c
index ffcbad7..cb14253 100644
--- a/net/mac80211/mesh_plink.c
+++ b/net/mac80211/mesh_plink.c
@@ -409,7 +409,7 @@ void mesh_rx_plink_frame(struct ieee80211_sub_if_data *sdata, struct ieee80211_m
 	baselen = (u8 *) mgmt->u.action.u.plink_action.variable - (u8 *) mgmt;
 	if (mgmt->u.action.u.plink_action.action_code == PLINK_CONFIRM) {
 		baseaddr += 4;
-		baselen += 4;
+		baselen -= 4;
 	}
 	ieee802_11_parse_elems(baseaddr, len - baselen, &elems);
 	if (!elems.peer_link) {

^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2009-08-12 18:15 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-11 10:22 diff --git a/net/mac80211/mesh_hwmp.c b/net/mac80211/mesh_hwmp.c David Woo
2009-08-11 10:50 ` Johannes Berg
2009-08-11 11:47   ` david woo
2009-08-11 18:47     ` John W. Linville
2009-08-12  0:33       ` 吴新华
2009-08-12  1:42     ` Javier Cardona
2009-08-12  6:39       ` david woo
2009-08-12 18:03         ` Fix preq frame process and peer link frame baselen Javier Cardona
2009-08-12 18:03           ` [PATCH 1/2] mac80211: Mark a destination sequence number as valid when a PREQ is received Javier Cardona
2009-08-12 18:03             ` [PATCH 2/2] mac80211: Fix invalid length passed to IE parser for PLINK CONFIRM frames Javier Cardona

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.