]> git.puffer.fish Git - mirror/frr.git/commitdiff
pimd: Send join when a S,G is pruned
authorDonald Sharp <sharpd@cumulusnetworks.com>
Tue, 2 Aug 2016 15:39:16 +0000 (11:39 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Thu, 22 Dec 2016 01:26:04 +0000 (20:26 -0500)
When a *,G is received, and we have S,G that is in a
non-joined state, Send the join to the S,G.

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

index 0a40ab6210e634d0726aa28555f5ed7a3e8d0466..3d98f9f95f1ee1722ac65e357c8ef6f687c3706a 100644 (file)
@@ -116,7 +116,9 @@ static void recv_join(struct interface *ifp,
                         __FILE__, __PRETTY_FUNCTION__,
                         buff, pim_str_sg_dump (&sg));
 
-              pim_channel_add_oif (up->channel_oil, ifp, PIM_OIF_FLAG_PROTO_PIM);
+              pim_channel_add_oif (child->channel_oil, ifp, PIM_OIF_FLAG_PROTO_PIM);
+              if (child->join_state != PIM_UPSTREAM_JOINED)
+                pim_upstream_switch (child, PIM_UPSTREAM_JOINED);
             }
         }
     }