• Brian Russell's avatar
    vxlan: don't allow overwrite of config src addr · 1158632b
    Brian Russell authored
    When using IPv6 transport and a default dst, a pointer to the configured
    source address is passed into the route lookup. If no source address is
    configured, then the value is overwritten.
    
    IPv6 route lookup ignores egress ifindex match if the source address is set,
    so if egress ifindex match is desired, the source address must be passed
    as any. The overwrite breaks this for subsequent lookups.
    
    Avoid this by copying the configured address to an existing stack variable
    and pass a pointer to that instead.
    
    Fixes: 272d96a5 ("net: vxlan: lwt: Use source ip address during route lookup.")
    Signed-off-by: default avatarBrian Russell <brussell@brocade.com>
    Acked-by: default avatarJiri Benc <jbenc@redhat.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    1158632b
vxlan.c 90.1 KB