• Antonio Quartulli's avatar
    batman-adv: make the TT CRC logic VLAN specific · 7ea7b4a1
    Antonio Quartulli authored
    This change allows nodes to handle the TT table on a
    per-VLAN basis. This is needed because nodes may have to
    store only some of the global entries advertised by another
    node.
    
    In this scenario such nodes would re-create only a partial
    global table and would not be able to compute a correct CRC
    anymore.
    
    This patch splits the logic and introduces one CRC per VLAN.
    In this way a node fetching only some entries belonging to
    some VLANs is still able to compute the needed CRCs and
    still check the table correctness.
    
    With this patch the shape of the TVLV-TT is changed too
    because now a node needs to advertise all the CRCs of all
    the VLANs that it is wired to.
    
    The debug output of the local Translation Table now shows
    the CRC along with each entry since there is not a common
    value for the entire table anymore.
    Signed-off-by: default avatarAntonio Quartulli <antonio@open-mesh.com>
    Signed-off-by: default avatarMarek Lindner <lindner_marek@yahoo.de>
    7ea7b4a1
packet.h 13.1 KB