batman-adv: use orig_hash_find() instead of get_orig_node() in TT code
authorAntonio Quartulli <ordex@autistici.org>
Wed, 12 Oct 2011 12:54:50 +0000 (14:54 +0200)
committerSven Eckelmann <sven@narfation.org>
Sun, 20 Nov 2011 12:08:32 +0000 (13:08 +0100)
get_orig_node() tries to retrieve an orig_node object based on a mac address
and creates it if not present. This is not the wanted behaviour in the
translation table code as we don't want to create new orig_code objects but
expect a NULL pointer if the object does not exist.

Reported-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
net/batman-adv/translation-table.c

index 1db9d96109a1b2f355ee05b0eef1be95182be730..7ab9d72ce978d5c69102b88f0c7bb8408eb91846 100644 (file)
@@ -1188,11 +1188,11 @@ static bool send_other_tt_response(struct bat_priv *bat_priv,
                (tt_request->flags & TT_FULL_TABLE ? 'F' : '.'));
 
        /* Let's get the orig node of the REAL destination */
-       req_dst_orig_node = get_orig_node(bat_priv, tt_request->dst);
+       req_dst_orig_node = orig_hash_find(bat_priv, tt_request->dst);
        if (!req_dst_orig_node)
                goto out;
 
-       res_dst_orig_node = get_orig_node(bat_priv, tt_request->src);
+       res_dst_orig_node = orig_hash_find(bat_priv, tt_request->src);
        if (!res_dst_orig_node)
                goto out;
 
@@ -1318,7 +1318,7 @@ static bool send_my_tt_response(struct bat_priv *bat_priv,
        my_ttvn = (uint8_t)atomic_read(&bat_priv->ttvn);
        req_ttvn = tt_request->ttvn;
 
-       orig_node = get_orig_node(bat_priv, tt_request->src);
+       orig_node = orig_hash_find(bat_priv, tt_request->src);
        if (!orig_node)
                goto out;