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>
This commit is contained in:
parent
fbe5818690
commit
67928c4041
|
@ -696,8 +696,10 @@ static netdev_tx_t reg_vif_xmit(struct sk_buff *skb,
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
err = ip6mr_fib_lookup(net, &fl6, &mrt);
|
err = ip6mr_fib_lookup(net, &fl6, &mrt);
|
||||||
if (err < 0)
|
if (err < 0) {
|
||||||
|
kfree_skb(skb);
|
||||||
return err;
|
return err;
|
||||||
|
}
|
||||||
|
|
||||||
read_lock(&mrt_lock);
|
read_lock(&mrt_lock);
|
||||||
dev->stats.tx_bytes += skb->len;
|
dev->stats.tx_bytes += skb->len;
|
||||||
|
|
Loading…
Reference in New Issue