diff options
| author | Liam McBirnie <mcbirnie.l@gmail.com> | 2019-12-05 21:57:50 +0100 | 
|---|---|---|
| committer | Liam McBirnie <liam.mcbirnie@rheinmetall.com> | 2019-12-12 13:09:46 +0100 | 
| commit | 771ce8ad240b0c620e6cf46a7841fe2b757f9b43 (patch) | |
| tree | 21bddb6be208123bb2237da10761bead01b18484 /pimd/pim_vty.c | |
| parent | 670812fd1351f8e396f4d2473dc43c88efd9902c (diff) | |
pimd: Add command to join any-source multicast.
Allow 'ip igmp join' to join group for any source if no source is
specified.
Disallow joining source "0.0.0.0" as it is used to define an
any-source multicast group.
Signed-off-by: Liam McBirnie <liam.mcbirnie@boeing.com>
Diffstat (limited to 'pimd/pim_vty.c')
| -rw-r--r-- | pimd/pim_vty.c | 20 | 
1 files changed, 13 insertions, 7 deletions
diff --git a/pimd/pim_vty.c b/pimd/pim_vty.c index 1c4ecf299f..c48ec373f8 100644 --- a/pimd/pim_vty.c +++ b/pimd/pim_vty.c @@ -379,13 +379,19 @@ int pim_interface_config_write(struct vty *vty)  							ij->group_addr,  							group_str,  							sizeof(group_str)); -						inet_ntop(AF_INET, -							  &ij->source_addr, -							  source_str, -							  sizeof(source_str)); -						vty_out(vty, -							" ip igmp join %s %s\n", -							group_str, source_str); +						if (ij->source_addr.s_addr == INADDR_ANY) { +							vty_out(vty, +								" ip igmp join %s\n", +								group_str); +						} else { +							inet_ntop(AF_INET, +								  &ij->source_addr, +								  source_str, +								  sizeof(source_str)); +							vty_out(vty, +								" ip igmp join %s %s\n", +								group_str, source_str); +						}  						++writes;  					}  				}  | 
