]> git.proxmox.com Git - mirror_frr.git/commitdiff
pimd: Allow (*,G) igmp joins to work.
authorDonald Sharp <sharpd@cumulusnetworks.com>
Mon, 6 Jun 2016 16:27:11 +0000 (12:27 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Mon, 6 Jun 2016 16:40:00 +0000 (12:40 -0400)
Start the implementation of accepting (*,G)
igmpv3 joins.

Ticket: CM-7894
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
pimd/pim_zebra.c

index eaf1b08078c18375a60f38af3d86a1496b3a97d2..989054636ad8931fa468e4408b4e370af1551f86 100644 (file)
@@ -702,14 +702,20 @@ void pim_zebra_init(char *zebra_sock_path)
 
 void igmp_anysource_forward_start(struct igmp_group *group)
 {
+  struct igmp_source *source;
+  struct in_addr src_addr = { .s_addr = 0 };
   /* Any source (*,G) is forwarded only if mode is EXCLUDE {empty} */
   zassert(group->group_filtermode_isexcl);
   zassert(listcount(group->group_source_list) < 1);
 
-  if (PIM_DEBUG_IGMP_TRACE) {
-    zlog_debug("%s %s: UNIMPLEMENTED",
-              __FILE__, __PRETTY_FUNCTION__);
-  }
+  source = source_new (group, src_addr);
+  if (!source)
+    {
+      zlog_warn ("%s: Failure to create * source", __PRETTY_FUNCTION__);
+      return;
+    }
+
+  igmp_source_forward_start (source);
 }
 
 void igmp_anysource_forward_stop(struct igmp_group *group)