From: Sven Eckelmann <sven@narfation.org> Date: Sun, 28 Feb 2016 10:38:52 +0000 (+0100) Subject: batman-adv: Remove hdr_size skb size check in batadv_interface_rx X-Git-Tag: baikal/mips/sdk5.9~23438^2~72^2~15 X-Git-Url: https://git.baikalelectronics.ru/sdk/?a=commitdiff_plain;h=a4a161b720034e556e7b08a784c067293e96590b;p=kernel.git batman-adv: Remove hdr_size skb size check in batadv_interface_rx The callers of batadv_interface_rx have to make sure that enough data can be pulled from the skb when they read the batman-adv header. The only two functions using it are either calling pskb_may_pull with hdr_size directly (batadv_recv_bcast_packet) or indirectly via batadv_check_unicast_packet (batadv_recv_unicast_packet). Reported-by: Marek Lindner <mareklindner@neomailbox.ch> Signed-off-by: Sven Eckelmann <sven@narfation.org> Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch> Signed-off-by: Antonio Quartulli <a@unstable.cc> --- diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c index dc9a61a5122de..d72f887077369 100644 --- a/net/batman-adv/soft-interface.c +++ b/net/batman-adv/soft-interface.c @@ -413,10 +413,6 @@ void batadv_interface_rx(struct net_device *soft_iface, batadv_bcast_packet = (struct batadv_bcast_packet *)skb->data; is_bcast = (batadv_bcast_packet->packet_type == BATADV_BCAST); - /* check if enough space is available for pulling, and pull */ - if (!pskb_may_pull(skb, hdr_size)) - goto dropped; - skb_pull_rcsum(skb, hdr_size); skb_reset_mac_header(skb);