mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-07 11:25:41 +00:00
pimd: Further refinement of switch on a stick
The original modification to allow the RP to receive packets on the incoming interface when it has no outgoing interfaces was a bit aggressive and turned all register events into a join event. This further divides up the code to do the right thing in each situation. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
284b4301e4
commit
483eef9dd2
@ -1089,7 +1089,16 @@ pim_upstream_inherited_olist (struct pim_upstream *up)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pim_upstream_switch (up, PIM_UPSTREAM_JOINED);
|
/*
|
||||||
|
* If we have output_intf switch state to Join and work like normal
|
||||||
|
* If we don't have an output_intf that means we are probably a
|
||||||
|
* switch on a stick so turn on forwarding to just accept the
|
||||||
|
* incoming packets so we don't bother the other stuff!
|
||||||
|
*/
|
||||||
|
if (output_intf)
|
||||||
|
pim_upstream_switch (up, PIM_UPSTREAM_JOINED);
|
||||||
|
else
|
||||||
|
forward_on (up);
|
||||||
|
|
||||||
return output_intf;
|
return output_intf;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user