]> git.baikalelectronics.ru Git - kernel.git/commit
tipc: compare remote and local protocols in tipc_udp_enable()
authorCong Wang <xiyou.wangcong@gmail.com>
Mon, 10 Dec 2018 23:23:30 +0000 (15:23 -0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 14 Dec 2018 21:28:03 +0000 (13:28 -0800)
commit58f829e510e395d516afcdf1b6e21bbe128fd5c5
tree98e8d8c50854c2648a2d076417e522e64efc3b82
parent167e94f3f61a3fed5b944e5b21b7b6f3ab21f852
tipc: compare remote and local protocols in tipc_udp_enable()

When TIPC_NLA_UDP_REMOTE is an IPv6 mcast address but
TIPC_NLA_UDP_LOCAL is an IPv4 address, a NULL-ptr deref is triggered
as the UDP tunnel sock is initialized to IPv4 or IPv6 sock merely
based on the protocol in local address.

We should just error out when the remote address and local address
have different protocols.

Reported-by: syzbot+eb4da3a20fad2e52555d@syzkaller.appspotmail.com
Cc: Ying Xue <ying.xue@windriver.com>
Cc: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Acked-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/tipc/udp_media.c