OpenCloudOS-Kernel/net/l2tp
Jacob Wen 91c524708d l2tp: copy 4 more bytes to linear part if necessary
The size of L2TPv2 header with all optional fields is 14 bytes.
l2tp_udp_recv_core only moves 10 bytes to the linear part of a
skb. This may lead to l2tp_recv_common read data outside of a skb.

This patch make sure that there is at least 14 bytes in the linear
part of a skb to meet the maximum need of l2tp_udp_recv_core and
l2tp_recv_common. The minimum size of both PPP HDLC-like frame and
Ethernet frame is larger than 14 bytes, so we are safe to do so.

Also remove L2TP_HDR_SIZE_NOSEQ, it is unused now.

Fixes: fd558d186d ("l2tp: Split pppol2tp patch into separate l2tp and ppp parts")
Suggested-by: Guillaume Nault <gnault@redhat.com>
Signed-off-by: Jacob Wen <jian.w.wen@oracle.com>
Acked-by: Guillaume Nault <gnault@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-01-31 08:58:46 -08:00
..
Kconfig l2tp: Call udp_sock_create 2014-07-14 16:12:15 -07:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
l2tp_core.c l2tp: copy 4 more bytes to linear part if necessary 2019-01-31 08:58:46 -08:00
l2tp_core.h l2tp: fix reading optional fields of L2TPv3 2019-01-30 21:44:17 -08:00
l2tp_debugfs.c l2tp: ignore L2TP_ATTR_MTU 2018-08-03 10:03:57 -07:00
l2tp_eth.c l2tp: fix unused function warning 2018-08-13 20:45:49 -07:00
l2tp_ip.c l2tp: fix reading optional fields of L2TPv3 2019-01-30 21:44:17 -08:00
l2tp_ip6.c l2tp: fix reading optional fields of L2TPv3 2019-01-30 21:44:17 -08:00
l2tp_netlink.c l2tp: split l2tp_session_get() 2018-08-11 12:13:49 -07:00
l2tp_ppp.c l2tp: fix unused function warning 2018-08-13 20:45:49 -07:00