-
- Downloads
net: ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup
ipv6_stub uses the ip6_dst_lookup function to allow other modules to perform IPv6 lookups. However, this function skips the XFRM layer entirely. All users of ipv6_stub->ip6_dst_lookup use ip_route_output_flow (via the ip_route_output_key and ip_route_output helpers) for their IPv4 lookups, which calls xfrm_lookup_route(). This patch fixes this inconsistent behavior by switching the stub to ip6_dst_lookup_flow, which also calls xfrm_lookup_route(). This requires some changes in all the callers, as these two functions take different arguments and have different return types. Fixes: 5f81bd2e ("ipv6: export a stub for IPv6 symbols used by vxlan") Reported-by:Xiumei Mu <xmu@redhat.com> Signed-off-by:
Sabrina Dubroca <sd@queasysnail.net> Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- drivers/infiniband/core/addr.c 3 additions, 4 deletionsdrivers/infiniband/core/addr.c
- drivers/infiniband/sw/rxe/rxe_net.c 5 additions, 3 deletionsdrivers/infiniband/sw/rxe/rxe_net.c
- drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c 4 additions, 4 deletionsdrivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c
- drivers/net/geneve.c 3 additions, 1 deletiondrivers/net/geneve.c
- drivers/net/vxlan.c 3 additions, 5 deletionsdrivers/net/vxlan.c
- include/net/ipv6_stubs.h 4 additions, 2 deletionsinclude/net/ipv6_stubs.h
- net/core/lwt_bpf.c 1 addition, 3 deletionsnet/core/lwt_bpf.c
- net/ipv6/addrconf_core.c 6 additions, 5 deletionsnet/ipv6/addrconf_core.c
- net/ipv6/af_inet6.c 1 addition, 1 deletionnet/ipv6/af_inet6.c
- net/mpls/af_mpls.c 3 additions, 4 deletionsnet/mpls/af_mpls.c
- net/tipc/udp_media.c 6 additions, 3 deletionsnet/tipc/udp_media.c
Loading
