]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
ipv6: Consider sk_bound_dev_if when binding a raw socket to an address
authorMike Manning <mmanning@vyatta.att-mail.com>
Mon, 20 May 2019 18:57:17 +0000 (19:57 +0100)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Wed, 14 Aug 2019 09:18:49 +0000 (11:18 +0200)
commitf6ff69f789b6be356f7b8c0d399381d35d532e11
tree53062a25510d0d5394df1ba015d8c3a360e1cb42
parent8019540e79bddb068b81b4c83e26e5e5ec31d49b
ipv6: Consider sk_bound_dev_if when binding a raw socket to an address

BugLink: https://bugs.launchpad.net/bugs/1838700
[ Upstream commit 72f7cfab6f93a8ea825fab8ccfb016d064269f7f ]

IPv6 does not consider if the socket is bound to a device when binding
to an address. The result is that a socket can be bound to eth0 and
then bound to the address of eth1. If the device is a VRF, the result
is that a socket can only be bound to an address in the default VRF.

Resolve by considering the device if sk_bound_dev_if is set.

Signed-off-by: Mike Manning <mmanning@vyatta.att-mail.com>
Reviewed-by: David Ahern <dsahern@gmail.com>
Tested-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
net/ipv6/raw.c