ipv6: take care of scope when choosing the src addr
commit abb9a68d2c64dd9b128ae1f2e635e4d805e7ce64 upstream. When the source address is selected, the scope must be checked. For example, if a loopback address is assigned to the vrf device, it must not be chosen for packets sent outside. CC: stable@vger.kernel.org Fixes: afbac6010aec ("net: ipv6: Address selection needs to consider L3 domains") Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> Reviewed-by: David Ahern <dsahern@kernel.org> Link: https://patch.msgid.link/20240710081521.3809742-4-nicolas.dichtel@6wind.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
d985c458b1
commit
98177458e5
1 changed files with 2 additions and 1 deletions
|
@ -1826,7 +1826,8 @@ int ipv6_dev_get_saddr(struct net *net, const struct net_device *dst_dev,
|
||||||
master, &dst,
|
master, &dst,
|
||||||
scores, hiscore_idx);
|
scores, hiscore_idx);
|
||||||
|
|
||||||
if (scores[hiscore_idx].ifa)
|
if (scores[hiscore_idx].ifa &&
|
||||||
|
scores[hiscore_idx].scopedist >= 0)
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue