mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 23:42:43 +00:00
29 lines
932 B
Diff
29 lines
932 B
Diff
|
From: Yuan-Chi Pang <fu3mo6goo@gmail.com>
|
||
|
Date: Wed, 29 Aug 2018 09:30:08 +0800
|
||
|
Subject: [PATCH] mac80211: mesh: fix HWMP sequence numbering to follow
|
||
|
standard
|
||
|
|
||
|
IEEE 802.11-2016 14.10.8.3 HWMP sequence numbering says:
|
||
|
If it is a target mesh STA, it shall update its own HWMP SN to
|
||
|
maximum (current HWMP SN, target HWMP SN in the PREQ element) + 1
|
||
|
immediately before it generates a PREP element in response to a
|
||
|
PREQ element.
|
||
|
|
||
|
Signed-off-by: Yuan-Chi Pang <fu3mo6goo@gmail.com>
|
||
|
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
|
||
|
---
|
||
|
|
||
|
--- a/net/mac80211/mesh_hwmp.c
|
||
|
+++ b/net/mac80211/mesh_hwmp.c
|
||
|
@@ -572,6 +572,10 @@ static void hwmp_preq_frame_process(stru
|
||
|
forward = false;
|
||
|
reply = true;
|
||
|
target_metric = 0;
|
||
|
+
|
||
|
+ if (SN_GT(target_sn, ifmsh->sn))
|
||
|
+ ifmsh->sn = target_sn;
|
||
|
+
|
||
|
if (time_after(jiffies, ifmsh->last_sn_update +
|
||
|
net_traversal_jiffies(sdata)) ||
|
||
|
time_before(jiffies, ifmsh->last_sn_update)) {
|