• Hannes Frederic Sowa's avatar
    ipv6: introduce ip6_dst_mtu_forward and protect forwarding path with it · 0954cf9c
    Hannes Frederic Sowa authored
    In the IPv6 forwarding path we are only concerend about the outgoing
    interface MTU, but also respect locked MTUs on routes. Tunnel provider
    or IPSEC already have to recheck and if needed send PtB notifications
    to the sending host in case the data does not fit into the packet with
    added headers (we only know the final header sizes there, while also
    using path MTU information).
    
    The reason for this change is, that path MTU information can be injected
    into the kernel via e.g. icmp_err protocol handler without verification
    of local sockets. As such, this could cause the IPv6 forwarding path to
    wrongfully emit Packet-too-Big errors and drop IPv6 packets.
    
    Cc: Eric Dumazet <eric.dumazet@gmail.com>
    Cc: David Miller <davem@davemloft.net>
    Cc: John Heffner <johnwheffner@gmail.com>
    Cc: Steffen Klassert <steffen.klassert@secunet.com>
    Signed-off-by: default avatarHannes Frederic Sowa <hannes@stressinduktion.org>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    0954cf9c
ip6_output.c 40.1 KB