pimd: There is nothing to do with a WRVIFWHOLE for iifp of pimreg

When the WRVIFWHOLE callback is made with a iifp of the pimreg
device we *know* that the packet is a PIM Register packet
( see net/ipv4/ipmr.c for kernel behavior ).  As such
we know that we will shortly read the pim register packet
and handle it through those mechanics.  There is nothing
to do here so we can move along.

Ticket: CM-27729
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
Donald Sharp 2019-12-20 07:57:28 -05:00
parent 9dc1cb0424
commit a054f6d73e

View File

@ -443,6 +443,7 @@ static int pim_mroute_msg_wrvifwhole(int fd, struct interface *ifp,
{ {
const struct ip *ip_hdr = (const struct ip *)buf; const struct ip *ip_hdr = (const struct ip *)buf;
struct pim_interface *pim_ifp; struct pim_interface *pim_ifp;
struct pim_instance *pim;
struct pim_ifchannel *ch; struct pim_ifchannel *ch;
struct pim_upstream *up; struct pim_upstream *up;
struct prefix_sg star_g; struct prefix_sg star_g;
@ -465,16 +466,18 @@ static int pim_mroute_msg_wrvifwhole(int fd, struct interface *ifp,
star_g = sg; star_g = sg;
star_g.src.s_addr = INADDR_ANY; star_g.src.s_addr = INADDR_ANY;
#if 0
ch = pim_ifchannel_find(ifp, &star_g); pim = pim_ifp->pim;
if (ch) /*
{ * If the incoming interface is the pimreg, then
if (PIM_DEBUG_MROUTE) * we know the callback is associated with a pim register
zlog_debug ("WRVIFWHOLE (*,G)=%s found ifchannel on interface %s", * packet and there is nothing to do here as that
pim_str_sg_dump (&star_g), ifp->name); * normal pim processing will see the packet and allow
return -1; * us to do the right thing.
*/
if (ifp == pim->regiface) {
return 0;
} }
#endif
up = pim_upstream_find(pim_ifp->pim, &sg); up = pim_upstream_find(pim_ifp->pim, &sg);
if (up) { if (up) {