• Timo Teräs's avatar
    gre: fix hard header destination address checking · 6d55cb91
    Timo Teräs authored
    ipgre_header() can be called with zero daddr when the gre device is
    configured as multipoint tunnel and still has the NOARP flag set (which is
    typically cleared by the userspace arp daemon).  If the NOARP packets are
    not dropped, ipgre_tunnel_xmit() will take rt->rt_gateway (= NBMA IP) and
    use that for route look up (and may lead to bogus xfrm acquires).
    The multicast address check is removed as sending to multicast group should
    be ok.  In fact, if gre device has a multicast address as destination
    ipgre_header is always called with multicast address.
    Signed-off-by: default avatarTimo Teras <timo.teras@iki.fi>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
ip_gre.c 40.4 KB