9cc3e0a941
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de> git-svn-id: svn://svn.openwrt.org/openwrt/packages@35324 3c298f89-4303-0410-b956-a3cf2f4a3e73
34 lines
1.1 KiB
Diff
34 lines
1.1 KiB
Diff
From 977d8c6f9253ad71e4bd8e4be2705c3bee684feb Mon Sep 17 00:00:00 2001
|
|
From: Matthias Schiffer <mschiffer@universe-factory.net>
|
|
Date: Wed, 23 Jan 2013 18:11:53 +0100
|
|
Subject: [PATCH 1/3] batman-adv: fix skb leak in
|
|
batadv_dat_snoop_incoming_arp_reply()
|
|
|
|
The callers of batadv_dat_snoop_incoming_arp_reply() assume the skb has been
|
|
freed when it returns true; fix this by calling kfree_skb before returning as
|
|
it is done in batadv_dat_snoop_incoming_arp_request().
|
|
|
|
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
|
|
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
|
|
Acked-by: Antonio Quartulli <ordex@autistici.org>
|
|
---
|
|
distributed-arp-table.c | 2 ++
|
|
1 file changed, 2 insertions(+)
|
|
|
|
diff --git a/distributed-arp-table.c b/distributed-arp-table.c
|
|
index 7485a78..9f4cff3 100644
|
|
--- a/distributed-arp-table.c
|
|
+++ b/distributed-arp-table.c
|
|
@@ -1012,6 +1012,8 @@ bool batadv_dat_snoop_incoming_arp_reply(struct batadv_priv *bat_priv,
|
|
*/
|
|
ret = !batadv_is_my_client(bat_priv, hw_dst);
|
|
out:
|
|
+ if (ret)
|
|
+ kfree_skb(skb);
|
|
/* if ret == false -> packet has to be delivered to the interface */
|
|
return ret;
|
|
}
|
|
--
|
|
1.7.10.4
|
|
|