Miaohe Lin
b89d3ce010
net: sit: fix UBSAN Undefined behaviour in check_6rd
...
[ Upstream commit a843dc4ebaecd15fca1f4d35a97210f72ea1473b ]
In func check_6rd,tunnel->ip6rd.relay_prefixlen may equal to
32,so UBSAN complain about it.
UBSAN: Undefined behaviour in net/ipv6/sit.c:781:47
shift exponent 32 is too large for 32-bit type 'unsigned int'
CPU: 6 PID: 20036 Comm: syz-executor.0 Not tainted 4.19.27 #2
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1ubuntu1
04/01/2014
Call Trace:
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0xca/0x13e lib/dump_stack.c:113
ubsan_epilogue+0xe/0x81 lib/ubsan.c:159
__ubsan_handle_shift_out_of_bounds+0x293/0x2e8 lib/ubsan.c:425
check_6rd.constprop.9+0x433/0x4e0 net/ipv6/sit.c:781
try_6rd net/ipv6/sit.c:806 [inline]
ipip6_tunnel_xmit net/ipv6/sit.c:866 [inline]
sit_tunnel_xmit+0x141c/0x2720 net/ipv6/sit.c:1033
__netdev_start_xmit include/linux/netdevice.h:4300 [inline]
netdev_start_xmit include/linux/netdevice.h:4309 [inline]
xmit_one net/core/dev.c:3243 [inline]
dev_hard_start_xmit+0x17c/0x780 net/core/dev.c:3259
__dev_queue_xmit+0x1656/0x2500 net/core/dev.c:3829
neigh_output include/net/neighbour.h:501 [inline]
ip6_finish_output2+0xa36/0x2290 net/ipv6/ip6_output.c:120
ip6_finish_output+0x3e7/0xa20 net/ipv6/ip6_output.c:154
NF_HOOK_COND include/linux/netfilter.h:278 [inline]
ip6_output+0x1e2/0x720 net/ipv6/ip6_output.c:171
dst_output include/net/dst.h:444 [inline]
ip6_local_out+0x99/0x170 net/ipv6/output_core.c:176
ip6_send_skb+0x9d/0x2f0 net/ipv6/ip6_output.c:1697
ip6_push_pending_frames+0xc0/0x100 net/ipv6/ip6_output.c:1717
rawv6_push_pending_frames net/ipv6/raw.c:616 [inline]
rawv6_sendmsg+0x2435/0x3530 net/ipv6/raw.c:946
inet_sendmsg+0xf8/0x5c0 net/ipv4/af_inet.c:798
sock_sendmsg_nosec net/socket.c:621 [inline]
sock_sendmsg+0xc8/0x110 net/socket.c:631
___sys_sendmsg+0x6cf/0x890 net/socket.c:2114
__sys_sendmsg+0xf0/0x1b0 net/socket.c:2152
do_syscall_64+0xc8/0x580 arch/x86/entry/common.c:290
entry_SYSCALL_64_after_hwframe+0x49/0xbe
Signed-off-by: linmiaohe <linmiaohe@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-03-19 13:14:08 +01:00
..
2018-10-03 17:01:42 -07:00
2019-01-13 10:03:52 +01:00
2018-04-13 19:48:34 +02:00
2016-09-10 21:19:10 -07:00
2018-05-16 10:08:44 +02:00
2019-02-23 09:05:59 +01:00
2019-02-27 10:07:00 +01:00
2019-02-12 19:44:56 +01:00
2019-02-27 10:07:03 +01:00
2018-09-05 09:20:00 +02:00
2019-01-31 08:12:36 +01:00
2019-02-27 10:06:57 +01:00
2019-03-13 14:04:52 -07:00
2018-09-19 22:47:15 +02:00
2019-02-12 19:44:59 +01:00
2018-02-25 11:05:44 +01:00
2018-07-22 14:27:39 +02:00
2019-02-12 19:45:00 +01:00
2017-02-18 15:11:43 +01:00
2019-03-19 13:14:08 +01:00
2019-01-09 16:16:40 +01:00
2019-03-13 14:04:55 -07:00
2019-03-19 13:14:08 +01:00
2017-05-25 15:44:41 +02:00
2018-09-15 09:43:01 +02:00
2018-03-31 18:11:34 +02:00
2018-06-13 16:16:42 +02:00
2018-06-16 09:52:32 +02:00
2019-03-19 13:14:08 +01:00
2016-09-10 23:12:53 -07:00
2018-12-01 09:44:19 +01:00
2019-03-05 17:57:06 +01:00
2018-09-09 20:01:19 +02:00
2018-03-11 16:21:34 +01:00
2016-10-20 11:23:08 -04:00
2019-03-13 14:05:00 -07:00
2019-03-13 14:04:53 -07:00
2018-08-09 12:17:59 +02:00
2019-02-06 17:33:27 +01:00
2019-03-13 14:04:53 -07:00
2019-01-31 08:12:33 +01:00
2019-02-27 10:07:00 +01:00
2018-08-24 13:12:36 +02:00
2019-02-12 19:45:00 +01:00
2018-05-16 10:08:43 +02:00
2019-02-06 17:33:27 +01:00
2019-02-12 19:44:59 +01:00
2019-03-13 14:04:53 -07:00
2019-02-27 10:07:01 +01:00
2018-04-29 11:32:02 +02:00
2019-01-23 08:10:55 +01:00
2016-10-19 10:58:04 -04:00
2019-01-23 08:10:56 +01:00
2017-11-18 11:22:22 +01:00
2019-03-13 14:05:00 -07:00
2019-03-05 17:57:06 +01:00
2019-02-23 09:05:59 +01:00
2019-02-15 08:07:39 +01:00
2019-01-09 16:16:41 +01:00
2016-08-17 19:36:23 -04:00
2016-08-17 19:36:23 -04:00
2018-11-10 07:42:58 -08:00
2016-10-06 09:52:23 -07:00