Skip to content

Commit 523a0c6

Browse files
greearbIgor
authored andcommitted
ipv6-multicast: Fix memory leak in IPv6 multicast.
If reg_vif_xmit cannot find a routing entry, be sure to free the skb before returning the error. Signed-off-by: Ben Greear <greearb@candelatech.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 786b37c commit 523a0c6

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

net/ipv6/ip6mr.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -696,8 +696,10 @@ static netdev_tx_t reg_vif_xmit(struct sk_buff *skb,
696696
int err;
697697

698698
err = ip6mr_fib_lookup(net, &fl6, &mrt);
699-
if (err < 0)
699+
if (err < 0) {
700+
kfree_skb(skb);
700701
return err;
702+
}
701703

702704
read_lock(&mrt_lock);
703705
dev->stats.tx_bytes += skb->len;

0 commit comments

Comments
 (0)