Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 51fb60eb authored by Paul Hüber's avatar Paul Hüber Committed by David S. Miller
Browse files

l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv



l2tp_ip_backlog_recv may not return -1 if the packet gets dropped.
The return value is passed up to ip_local_deliver_finish, which treats
negative values as an IP protocol number for resubmission.

Signed-off-by: default avatarPaul Hüber <phueber@kernsp.in>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 1ecc9ad0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -388,7 +388,7 @@ static int l2tp_ip_backlog_recv(struct sock *sk, struct sk_buff *skb)
drop:
	IP_INC_STATS(sock_net(sk), IPSTATS_MIB_INDISCARDS);
	kfree_skb(skb);
	return -1;
	return 0;
}

/* Userspace will call sendmsg() on the tunnel socket to send L2TP