|
@@ -1705,7 +1705,8 @@ static bool batadv_tt_global_add(struct batadv_priv *bat_priv,
|
|
|
ether_addr_copy(common->addr, tt_addr);
|
|
|
common->vid = vid;
|
|
|
|
|
|
- common->flags = flags & (~BATADV_TT_SYNC_MASK);
|
|
|
+ if (!is_multicast_ether_addr(common->addr))
|
|
|
+ common->flags = flags & (~BATADV_TT_SYNC_MASK);
|
|
|
|
|
|
tt_global_entry->roam_at = 0;
|
|
|
/* node must store current time in case of roaming. This is
|
|
@@ -1769,7 +1770,8 @@ static bool batadv_tt_global_add(struct batadv_priv *bat_priv,
|
|
|
* TT_CLIENT_TEMP, therefore they have to be copied in the
|
|
|
* client entry
|
|
|
*/
|
|
|
- common->flags |= flags & (~BATADV_TT_SYNC_MASK);
|
|
|
+ if (!is_multicast_ether_addr(common->addr))
|
|
|
+ common->flags |= flags & (~BATADV_TT_SYNC_MASK);
|
|
|
|
|
|
/* If there is the BATADV_TT_CLIENT_ROAM flag set, there is only
|
|
|
* one originator left in the list and we previously received a
|