Hi Javier,
I looked at the latest draft (D11/april 2011) and here what is says about PREP processing:
Section: 11C.9.8.4 Forwarding information
...
--- The mesh STA shall create or update its forwarding information to the target mesh STA, if it
received a PREP, and one of the following conditions is met:
--- The Target HWMP sequence number > HWMP sequence number in the forwarding
information for this target mesh STA, or
--- The Target HWMP sequence number = HWMP sequence number in the forwarding information for this target mesh STA AND the updated path metric is better than the path
metric in the forwarding information.
...

and section: 11C.9.10.4.3 Effect of receipt
A mesh STA receiving a PREP according to the acceptance criteria in 11C.9.10.4.2 (Acceptance criteria) shall create or update the active forwarding information it maintains for the target mesh STA of the PREP (according to the rules defined in 11C.9.8.4 (Forwarding information)). If the conditions for creating or updating the forwarding information have not been met in those rules, no further steps are applied to the
PREP.

With that in mind the code should be changed as follows: (mesh_hwmp.c, hwmp_route_info_get())

                   (mpath->flags&  MESH_PATH_SN_VALID)) {
                  if (SN_GT(mpath->sn, orig_sn) ||
                      (mpath->sn == orig_sn&&
 -                      action == MPATH_PREQ&&
                      new_metric>= mpath->metric)) {
                      process = false;
                      fresh_info = false;
                  }

Basically PREQ and PREP should be treated the as far as updating the forwarding information.


--Fabrice


_______________________________________________
Devel mailing list
Devel@lists.open80211s.org
http://open80211s.com/mailman/listinfo/devel

Reply via email to