• Mobashshera Rasool's avatar
    net: ip6mr: add support for passing full packet on wrong mif · 4b340a5a
    Mobashshera Rasool authored
    This patch adds support for MRT6MSG_WRMIFWHOLE which is used to pass
    full packet and real vif id when the incoming interface is wrong.
    While the RP and FHR are setting up state we need to be sending the
    registers encapsulated with all the data inside otherwise we lose it.
    The RP then decapsulates it and forwards it to the interested parties.
    Currently with WRONGMIF we can only be sending empty register packets
    and will lose that data.
    This behaviour can be enabled by using MRT_PIM with
    val == MRT6MSG_WRMIFWHOLE. This doesn't prevent MRT6MSG_WRONGMIF from
    happening, it happens in addition to it, also it is controlled by the same
    throttling parameters as WRONGMIF (i.e. 1 packet per 3 seconds currently).
    Both messages are generated to keep backwards compatibily and avoid
    breaking someone who was enabling MRT_PIM with val == 4, since any
    positive val is accepted and treated the same.
    Signed-off-by: default avatarMobashshera Rasool <mobash.rasool.linux@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    4b340a5a
ip6mr.c 59.6 KB