diff options
author | Mike Manning <[email protected]> | 2022-07-25 19:14:42 +0100 |
---|---|---|
committer | David S. Miller <[email protected]> | 2022-07-29 11:58:54 +0100 |
commit | 944fd1aeacb627fa617f85f8e5a34f7ae8ea4d8e (patch) | |
tree | 26cb2c086ba7fa38388ce5e5b3e899d48a23fc0b /scripts/gdb/linux/utils.py | |
parent | d7c4c9e075f8cc6d88d277bc24e5d99297f03c06 (diff) |
net: allow unbound socket for packets in VRF when tcp_l3mdev_accept set
The commit 3c82a21f4320 ("net: allow binding socket in a VRF when
there's an unbound socket") changed the inet socket lookup to avoid
packets in a VRF from matching an unbound socket. This is to ensure the
necessary isolation between the default and other VRFs for routing and
forwarding. VRF-unaware processes running in the default VRF cannot
access another VRF and have to be run with 'ip vrf exec <vrf>'. This is
to be expected with tcp_l3mdev_accept disabled, but could be reallowed
when this sysctl option is enabled. So instead of directly checking dif
and sdif in inet[6]_match, here call inet_sk_bound_dev_eq(). This
allows a match on unbound socket for non-zero sdif i.e. for packets in
a VRF, if tcp_l3mdev_accept is enabled.
Fixes: 3c82a21f4320 ("net: allow binding socket in a VRF when there's an unbound socket")
Signed-off-by: Mike Manning <[email protected]>
Link: https://lore.kernel.org/netdev/[email protected]/
Reviewed-by: David Ahern <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'scripts/gdb/linux/utils.py')
0 files changed, 0 insertions, 0 deletions