[B.A.T.M.A.N.] [PATCH maint] batman-adv: Fix batadv_compare_tt function

Def def at laposte.net
Mon Jul 27 11:58:18 CEST 2015


batadv_compare_tt have to check vid.

Signed-off-by: Def <def at laposte.net>
---
 translation-table.c |    7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/translation-table.c b/translation-table.c
index d73b103..d16433a 100644
--- a/translation-table.c
+++ b/translation-table.c
@@ -45,13 +45,16 @@ static void batadv_tt_global_del(struct batadv_priv *bat_priv,
 				 unsigned short vid, const char *message,
 				 bool roaming);
 
-/* returns 1 if they are the same mac addr */
+/* returns 1 if they are the same mac addr and vid */
 static int batadv_compare_tt(const struct hlist_node *node, const void *data2)
 {
 	const void *data1 = container_of(node, struct batadv_tt_common_entry,
 					 hash_entry);
 
-	return batadv_compare_eth(data1, data2);
+	struct batadv_tt_common_entry* tt1 = data1;
+	struct batadv_tt_common_entry* tt2 = data2;
+
+	return (tt1->vid == tt2->vid) && batadv_compare_eth(data1, data2);
 }
 
 /**
-- 
1.7.10.4



More information about the B.A.T.M.A.N mailing list