[linux-next] LinuxNextTracking branch, master, updated. next-20121126

batman at open-mesh.org batman at open-mesh.org
Tue Nov 27 00:21:17 CET 2012


The following commit has been merged in the master branch:
commit 1f36aebcc5fa53c5d98f3329186466b5eb76a168
Author: Antonio Quartulli <ordex at autistici.org>
Date:   Thu Nov 8 21:55:29 2012 +0100

    batman-adv: don't add TEMP clients belonging to other backbone nodes
    
    The "early client detection" mechanism must not add clients belonging
    to other backbone nodes. Such clients must be reached by directly
    using the LAN instead of the mesh.
    
    This was introduced by 30cfd02b60e1cb16f5effb0a01f826c5bb7e4c59
    ("batman-adv: detect not yet announced clients")
    
    Reported-by: Glen Page <glen.page at thet.net>
    Signed-off-by: Antonio Quartulli <ordex at autistici.org>
    Signed-off-by: Marek Lindner <lindner_marek at yahoo.de>

diff --git a/net/batman-adv/translation-table.c b/net/batman-adv/translation-table.c
index fec1a00..baae715 100644
--- a/net/batman-adv/translation-table.c
+++ b/net/batman-adv/translation-table.c
@@ -2456,6 +2456,13 @@ bool batadv_tt_add_temporary_global_entry(struct batadv_priv *bat_priv,
 {
 	bool ret = false;
 
+	/* if the originator is a backbone node (meaning it belongs to the same
+	 * LAN of this node) the temporary client must not be added because to
+	 * reach such destination the node must use the LAN instead of the mesh
+	 */
+	if (batadv_bla_is_backbone_gw_orig(bat_priv, orig_node->orig))
+		goto out;
+
 	if (!batadv_tt_global_add(bat_priv, orig_node, addr,
 				  BATADV_TT_CLIENT_TEMP,
 				  atomic_read(&orig_node->last_ttvn)))

-- 
LinuxNextTracking


More information about the linux-merge mailing list