mbox series

[net,0/2] net: convert ipv6_stub to ip6_dst_lookup_flow

Message ID cover.1575458463.git.sd@queasysnail.net
Headers show
Series net: convert ipv6_stub to ip6_dst_lookup_flow | expand

Message

Sabrina Dubroca Dec. 4, 2019, 2:35 p.m. UTC
Xiumei Mu reported a bug in a VXLAN over IPsec setup:

  IPv6 | ESP | VXLAN

Using this setup, packets go out unencrypted, because VXLAN over IPv6
gets its route from ipv6_stub->ipv6_dst_lookup (in vxlan6_get_route),
which doesn't perform an XFRM lookup.

This patchset first makes ip6_dst_lookup_flow suitable for some
existing users of ipv6_stub->ipv6_dst_lookup by adding a 'net'
argument, then converts all those users.

Sabrina Dubroca (2):
  net: ipv6: add net argument to ip6_dst_lookup_flow
  net: ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup

 drivers/infiniband/core/addr.c                      |  7 +++----
 drivers/infiniband/sw/rxe/rxe_net.c                 |  8 +++++---
 drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c |  8 ++++----
 drivers/net/geneve.c                                |  4 +++-
 drivers/net/vxlan.c                                 |  8 +++-----
 include/net/ipv6.h                                  |  2 +-
 include/net/ipv6_stubs.h                            |  6 ++++--
 net/core/lwt_bpf.c                                  |  4 +---
 net/dccp/ipv6.c                                     |  6 +++---
 net/ipv6/addrconf_core.c                            | 11 ++++++-----
 net/ipv6/af_inet6.c                                 |  4 ++--
 net/ipv6/datagram.c                                 |  2 +-
 net/ipv6/inet6_connection_sock.c                    |  4 ++--
 net/ipv6/ip6_output.c                               |  8 ++++----
 net/ipv6/raw.c                                      |  2 +-
 net/ipv6/syncookies.c                               |  2 +-
 net/ipv6/tcp_ipv6.c                                 |  4 ++--
 net/l2tp/l2tp_ip6.c                                 |  2 +-
 net/mpls/af_mpls.c                                  |  7 +++----
 net/sctp/ipv6.c                                     |  4 ++--
 net/tipc/udp_media.c                                |  9 ++++++---
 21 files changed, 58 insertions(+), 54 deletions(-)

Comments

David Miller Dec. 4, 2019, 8:27 p.m. UTC | #1
From: Sabrina Dubroca <sd@queasysnail.net>
Date: Wed,  4 Dec 2019 15:35:51 +0100

> Xiumei Mu reported a bug in a VXLAN over IPsec setup:
> 
>   IPv6 | ESP | VXLAN
> 
> Using this setup, packets go out unencrypted, because VXLAN over IPv6
> gets its route from ipv6_stub->ipv6_dst_lookup (in vxlan6_get_route),
> which doesn't perform an XFRM lookup.
> 
> This patchset first makes ip6_dst_lookup_flow suitable for some
> existing users of ipv6_stub->ipv6_dst_lookup by adding a 'net'
> argument, then converts all those users.

Series applied, thanks.