On 11/02/14 17:05, Antonio Quartulli wrote:
From: Antonio Quartulli antonio@open-mesh.com
When computing the CRC on a 2byte variable the order of the bytes obviously alters the final result. This means that computing the CRC over the same value on two archs having different endianess leads to different numbers.
The global and local translation table CRC computation routine makes this mistake while processing the clients VIDs. The result is a continuous CRC mismatching between nodes having different endianess.
Fix this by converting the VID to Network Order before processing it. This guarantees that every node uses the same byte order.
Introduced by 21a57f6e7a3b4455dfe68ee07a7b901d9e7f200b ("batman-adv: make the TT CRC logic VLAN specific")
Signed-off-by: Antonio Quartulli antonio@open-mesh.com
Both the patch are:
Reported-by: Russel Senior russell@personaltelco.net