batman-adv: Fix mem leak in the batadv_tt_local_event() function
authorJesper Juhl <jj@chaosbits.net>
Tue, 7 Aug 2012 08:32:34 +0000 (08:32 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 8 Aug 2012 23:04:04 +0000 (16:04 -0700)
Memory is allocated for 'tt_change_node' with kmalloc().
'tt_change_node' may go out of scope really being used for anything
(except have a few members initialized) if we hit the 'del:' label.
This patch makes sure we free the memory in that case.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Acked-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/batman-adv/translation-table.c

index a438f4b582fc8adccba3a67dfb33326b1ecf4606..99dd8f75b3ff20f0d2a277e1f65ffc284b002f2e 100644 (file)
@@ -197,6 +197,7 @@ static void batadv_tt_local_event(struct batadv_priv *bat_priv,
 del:
                list_del(&entry->list);
                kfree(entry);
+               kfree(tt_change_node);
                event_removed = true;
                goto unlock;
        }