]> git.puffer.fish Git - mirror/frr.git/commitdiff
pimd: Start switchover to using a PRUNE (S,G) for uninteresting streams
authorDonald Sharp <sharpd@cumulusnetwroks.com>
Fri, 22 Jul 2016 13:26:30 +0000 (09:26 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Thu, 22 Dec 2016 01:26:02 +0000 (20:26 -0500)
When we receive a register for a (S,G) that we have no interest in
prune it off and send the register stop.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
pimd/pim_register.c

index d6c8fecd9f079fd31e08a9dd895c0435e0a67c67..8c9e6c7810a2540275a04fd56c07780096924d5d 100644 (file)
@@ -313,6 +313,12 @@ pim_register_recv (struct interface *ifp,
      * If we don't have a place to send ignore the packet
      */
     if (!upstream)
+      {
+       upstream = pim_upstream_add (source, group, ifp);
+       pim_upstream_switch (upstream, PIM_UPSTREAM_PRUNE);
+      }
+
+    if (upstream->join_state == PIM_UPSTREAM_PRUNE)
       {
        pim_register_stop_send (ifp, source, group, src_addr);
        return 1;