l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv
authorPaul Hüber <phueber@kernsp.in>
Sun, 26 Feb 2017 16:58:19 +0000 (17:58 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 22 Mar 2017 11:04:14 +0000 (12:04 +0100)
commit2cd0afc64e333f2ef62444300418883cff0e79da
tree47f8c6a3693a9f50aff5d8112a357b9c15606deb
parent354f79125f12bcd7352704e770c0b10c4a4b424e
l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv

[ Upstream commit 51fb60eb162ab84c5edf2ae9c63cf0b878e5547e ]

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: Paul Hüber <phueber@kernsp.in>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/l2tp/l2tp_ip.c