]> git.baikalelectronics.ru Git - kernel.git/commit
ipv6: Fix handling of LLA with VRF and sockets bound to VRF
authorDavid Ahern <dsahern@gmail.com>
Wed, 12 Dec 2018 23:27:38 +0000 (15:27 -0800)
committerDavid S. Miller <davem@davemloft.net>
Sat, 15 Dec 2018 19:36:14 +0000 (11:36 -0800)
commitfe8ae1c39ac550fe0d83efc8fccf414b000e9f7e
tree3578009723ccb7f2e954f648674c42888e7d604e
parentf16c1110937d746953a32bc4114d1a4b5025cedd
ipv6: Fix handling of LLA with VRF and sockets bound to VRF

A recent commit allows sockets bound to a VRF to receive ipv6 link local
packets. However, it only works for UDP and worse TCP connection attempts
to the LLA with the only listener bound to the VRF just hang where as
before the client gets a reset and connection refused. Fix by adjusting
ir_iif for LL addresses and packets received through a device enslaved
to a VRF.

Fixes: c256c44266e1 ("vrf: mark skb for multicast or link-local as enslaved to VRF")
Reported-by: Donald Sharp <sharpd@cumulusnetworks.com>
Cc: Mike Manning <mmanning@vyatta.att-mail.com>
Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/tcp_ipv6.c