mirror_frr/pimd
sarita patra 3051f4438d pim: Keeping list of address-family under gmp container
Renamed frr-igmp.yang to frr-gmp.yang, igmp to gmp container.
to support IGMP and MLD protocol.

frr-gmp.yang, created a list of address family under mgmd
container. For PIMV4 the key is IPV4, where as for PIMV6
the key is IPV6. This is done for PIMV6 development.

This commit will have all the northbound changes to support
IPV4 address family.

Signed-off-by: sarita patra <saritap@vmware.com>
2022-01-17 05:10:20 -08:00
..
.gitignore pim6d: add skeleton for IPv6 PIM daemon 2022-01-12 18:23:50 +01:00
AUTHORS pimd: Remove unnecessary QuaggaId 2016-12-21 20:26:03 -05:00
CAVEATS pimd: added mtrace caveat 2018-02-27 14:03:39 +01:00
COMMANDS pimd: show ip igmp statistics command 2018-05-04 17:05:19 +02:00
COPYING
DEBUG pimd: Cleanup the headers. 2017-01-19 10:01:02 -05:00
LINUX_KERNEL_MROUTE_MFC pimd: Remove unnecessary QuaggaId 2016-12-21 20:26:03 -05:00
Makefile build: non-recursive pimd 2017-09-07 16:20:42 +02:00
mtracebis_netlink.c pimd ripd ripngd: variable shadowing fixes 2018-09-12 12:55:31 +02:00
mtracebis_netlink.h *: conform with COMMUNITY.md formatting rules, via 'make indent' 2018-03-06 14:04:32 -05:00
mtracebis_routeget.c *: fix config.h/zebra.h include order 2018-09-08 21:30:42 +02:00
mtracebis_routeget.h pimd: Multicast traceroute client and router 2018-02-19 23:13:55 +01:00
mtracebis.c pimd: replace inet_ntoa 2020-10-22 10:13:56 -04:00
pim6_main.c pim6d: add skeleton for IPv6 PIM daemon 2022-01-12 18:23:50 +01:00
pim_addr.c *: use semicolon after printfrr_ext_autoreg_{p,d} 2022-01-14 13:33:57 +01:00
pim_addr.h pimd: temporarily disable IPv6 types 2022-01-12 18:24:07 +01:00
pim_assert.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_assert.h pimd: Modify in_addr to pim_addr in pim_assert_metric 2022-01-10 21:10:29 -08:00
pim_bfd.c *: cleanup ifp->vrf_id 2021-11-22 20:47:23 +03:00
pim_bfd.h pimd: rework BFD integration 2021-04-23 09:28:57 -03:00
pim_br.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_br.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_bsm.c pimd : packet processing optimization on rp change 2021-11-18 21:46:07 -08:00
pim_bsm.h pimd: move BSM clear into BSM code 2021-11-17 11:17:44 +01:00
pim_cmd.c pim: Keeping list of address-family under gmp container 2022-01-17 05:10:20 -08:00
pim_cmd.h pimd : Add support for MLAG Register & Un-register 2019-11-13 19:46:52 -08:00
pim_errors.c pimd: PIM_[ERR|WARN] -> EC_PIM 2018-09-13 19:12:58 +00:00
pim_errors.h pimd: PIM_[ERR|WARN] -> EC_PIM 2018-09-13 19:12:58 +00:00
pim_hello.c pimd: Add a flag to decide PIM has to send Hello 2021-10-03 22:04:34 -07:00
pim_hello.h *: reindent 2017-07-17 14:04:07 +02:00
pim_iface.c pimd: Modifying members of pim_interface to accommodate IPv6 changes 2022-01-11 03:18:06 -08:00
pim_iface.h pimd: Modifying members of pim_interface to accommodate IPv6 changes 2022-01-11 03:18:06 -08:00
pim_ifchannel.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_ifchannel.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_igmp_join.h pimd: Add command to join any-source multicast. 2019-12-12 13:09:46 +01:00
pim_igmp_mtrace.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_igmp_mtrace.h pimd: Modifying struct igmp_sock to gm_sock for IPv6 2021-12-03 10:27:12 -08:00
pim_igmp_stats.c *: fix config.h/zebra.h include order 2018-09-08 21:30:42 +02:00
pim_igmp_stats.h pimd: show ip igmp statistics command 2018-05-04 17:05:19 +02:00
pim_igmp.c pimd: Modifying members of pim_interface to accommodate IPv6 changes 2022-01-11 03:18:06 -08:00
pim_igmp.h pimd: Modifying in_addr to pim_addr in struct pim_neighbor and gm_sock 2022-01-10 21:10:29 -08:00
pim_igmpv2.c pimd: IGMPv2 leave msg may be longer than 8 octets 2022-01-13 00:21:43 -08:00
pim_igmpv2.h pimd: Modifying struct igmp_sock to gm_sock for IPv6 2021-12-03 10:27:12 -08:00
pim_igmpv3.c pimd: Modifying members of pim_interface to accommodate IPv6 changes 2022-01-11 03:18:06 -08:00
pim_igmpv3.h pimd: Modifying struct igmp_sock to gm_sock for IPv6 2021-12-03 10:27:12 -08:00
pim_instance.c *: rework renaming the default VRF 2021-12-21 22:09:29 +03:00
pim_instance.h pimd: de-circularize includes 2021-08-27 10:41:23 +02:00
pim_int.c *: reindent 2017-07-17 14:04:07 +02:00
pim_int.h *: make consistent & update GPLv2 file headers 2017-05-15 16:37:41 +02:00
pim_join.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_join.h *: reindent 2017-07-17 14:04:07 +02:00
pim_jp_agg.c *: unify if_is_loopback/if_is_loopback_or_vrf 2021-11-16 18:07:11 +03:00
pim_jp_agg.h pimd: Modifying in_addr to pim_addr in struct pim_jp_agg_group for IPv6 2022-01-10 21:10:29 -08:00
pim_macro.c pimd: Modifying in_addr to pim_addr in struct pim_interface for IPv6 2022-01-10 21:10:29 -08:00
pim_macro.h pimd: Modifying in_addr to pim_addr in struct pim_interface for IPv6 2022-01-10 21:10:29 -08:00
pim_main.c pim: Keeping list of address-family under gmp container 2022-01-17 05:10:20 -08:00
pim_memory.c *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
pim_memory.h *: require semicolon after DEFINE_MTYPE & co 2021-03-17 06:18:17 +01:00
pim_mlag.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_mlag.h *: convert zclient callbacks to table 2021-10-20 13:28:46 +02:00
pim_mroute.c Merge pull request #10279 from SaiGomathiN/pim_intf 2022-01-13 16:13:54 +01:00
pim_mroute.h pimd: de-circularize includes 2021-08-27 10:41:23 +02:00
pim_msdp_packet.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_msdp_packet.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_msdp_socket.c pimd: Do not explicitly set the thread pointer to NULL 2021-10-04 19:29:06 +03:00
pim_msdp_socket.h pimd: Make msdp struct pim_instance * aware 2017-07-24 13:51:37 -04:00
pim_msdp.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_msdp.h pim6d: drop off MSDP code 2022-01-14 20:32:41 +01:00
pim_msg.c *: Finish off the __PRETTY_FUNCTION__ to __func__ 2020-03-06 09:23:22 -05:00
pim_msg.h pimd: handle endianness in pim header structure 2019-07-10 11:46:40 +08:00
pim_nb_config.c pim: Keeping list of address-family under gmp container 2022-01-17 05:10:20 -08:00
pim_nb.c pim: Keeping list of address-family under gmp container 2022-01-17 05:10:20 -08:00
pim_nb.h pim: Keeping list of address-family under gmp container 2022-01-17 05:10:20 -08:00
pim_neighbor.c pimd: Add a flag to decide PIM has to send Hello 2021-10-03 22:04:34 -07:00
pim_neighbor.h pimd: Modifying in_addr to pim_addr in struct pim_neighbor and gm_sock 2022-01-10 21:10:29 -08:00
pim_nht.c pimd: add back blocking RPF for BSM 2021-11-17 11:17:44 +01:00
pim_nht.h pimd: add back blocking RPF for BSM 2021-11-17 11:17:44 +01:00
pim_oil.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_oil.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_pim.c pimd: Modifying in_addr to pim_addr in struct pim_interface for IPv6 2022-01-10 21:10:29 -08:00
pim_pim.h pimd: Pim hello should be sent with 0 hold time on address change on old src ip 2020-03-19 03:06:46 -07:00
pim_register.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_register.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_routemap.c bgpd, lib, ospf6d, ospfd, pimd, zebra: Rework routemap event callback 2019-05-10 18:43:21 -04:00
pim_rp.c pimd: remove redundant header inclusion 2022-01-07 23:21:00 -08:00
pim_rp.h pimd: de-circularize includes 2021-08-27 10:41:23 +02:00
pim_rpf.c pimd: clean up BSR NHT & fix parallel links 2021-11-17 11:17:44 +01:00
pim_rpf.h pimd: Modifying in_addr to pim_addr in struct pim_nexthop for IPv6. 2022-01-10 21:10:29 -08:00
pim_signals.c *: Convert quagga_signal_X to frr_signal_X 2021-11-11 14:41:27 -05:00
pim_signals.h *: Convert quagga_signal_X to frr_signal_X 2021-11-11 14:41:27 -05:00
pim_sock.c pimd: IGMP sockets need to be iface-bound too 2021-07-06 01:44:24 +02:00
pim_sock.h pimd: pim_socket_join_source is only called from one place 2018-08-02 10:09:09 -04:00
pim_ssm.c pimd: Remove pim->vrf_id and use pim->vrf->vrf_id 2021-05-12 14:36:59 -04:00
pim_ssm.h pimd: Cleanup pim_ssm.c to use 'struct pim_instance *' 2017-07-24 13:51:36 -04:00
pim_ssmpingd.c pimd: Remove pim->vrf_id and use pim->vrf->vrf_id 2021-05-12 14:36:59 -04:00
pim_ssmpingd.h pimd: Make pim_ssmpingd.c 'struct pim_instance' aware 2017-07-24 13:51:37 -04:00
pim_static.c *: cleanup ifp->vrf_id 2021-11-22 20:47:23 +03:00
pim_static.h pimd: Put 'struct pim_instance *' as the first function parameter 2017-07-24 13:51:41 -04:00
pim_str.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_str.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_time.c pimd: actually return msec in timer_remain_msec() 2021-11-17 11:17:44 +01:00
pim_time.h *: make consistent & update GPLv2 file headers 2017-05-15 16:37:41 +02:00
pim_tlv.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_tlv.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_upstream.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_upstream.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_util.c *: Convert numeric 32 into IPV4_MAX_BITLEN for prefixlen 2021-07-01 23:50:39 +03:00
pim_util.h pimd: add support for boundaries 2017-09-26 13:00:52 -04:00
pim_vty.c pimd: Modifying members of pim_interface to accommodate IPv6 changes 2022-01-11 03:18:06 -08:00
pim_vty.h lib, pimd: Remove PIM_NODE as it is not needed 2018-01-30 03:21:42 -05:00
pim_vxlan_instance.h pimd: handle ipmr-lo operational state changes 2020-02-14 09:18:30 -08:00
pim_vxlan.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_vxlan.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_zebra.c Merge pull request #10279 from SaiGomathiN/pim_intf 2022-01-13 16:13:54 +01:00
pim_zebra.h pimd: Modifying name of struct igmp_group to struct gm_group for IPv6. 2021-12-03 10:11:13 -08:00
pim_zlookup.c pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_zlookup.h pimd, zebra: Encode nexthop vrf in message 2018-11-01 19:24:59 -04:00
pim_zpthread.c pimd: Add accidently missed code during upstreaming process 2020-03-06 16:02:52 -05:00
pimd.c pim6d: add skeleton for IPv6 PIM daemon 2022-01-12 18:23:50 +01:00
pimd.h pimd: abstract addresses for IPv4/IPv6 PIM 2022-01-12 18:24:07 +01:00
README pimd: fix frr url 2020-03-29 17:19:37 -04:00
subdir.am pim: Keeping list of address-family under gmp container 2022-01-17 05:10:20 -08:00
test_igmpv3_join.c pimd: Remove #if 0 code from system 2021-01-28 13:37:53 -05:00
TODO pimd: Cleanup TODO file 2018-02-26 21:33:02 -05:00
TROUBLESHOOTING

INTRODUCTION

        qpimd aims to implement a PIM (Protocol Independent Multicast)
	daemon for the FRR Routing Suite.

	qpimd implements PIM-SM (Sparse Mode) of RFC 4601.
        Additionally MSDP has been implemented.

	In order to deliver end-to-end multicast routing control
	plane, qpimd includes the router-side of IGMPv[2|3] (RFC 3376).

LICENSE

        qpimd - pimd for FRR
        Copyright (C) 2008 Everton da Silva Marques

        qpimd is free software; you can redistribute it and/or modify
        it under the terms of the GNU General Public License as
        published by the Free Software Foundation; either version 2,
        or (at your option) any later version.

        qpimd is distributed in the hope that it will be useful, but
        WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        GNU General Public License for more details.

        You should have received a copy of the GNU General Public
        License along with qpimd; see the file COPYING.  If not, write
        to the Free Software Foundation, Inc., 59 Temple Place - Suite
        330, Boston, MA 02111-1307, USA.

HOME SITE

        qpimd lives at:

        https://github.com/frrouting/frr

PLATFORMS

	qpimd has been tested with Debian Jessie.

REQUIREMENTS

	qpimd requires FRR (2.0 or higher)


CONFIGURATION COMMANDS

	See available commands in the file pimd/COMMANDS.

KNOWN CAVEATS

	See list of known caveats in the file pimd/CAVEATS.

SUPPORT

	Please post comments, questions, patches, bug reports at the
	support site:

        https://frrouting.org/frr

RELATED WORK

	igmprt:	An IGMPv3-router implementation
	- http://www.loria.fr/~lahmadi/igmpv3-router.html

	USC pimd: PIMv2-SM daemon
	- http://netweb.usc.edu/pim/pimd (URL broken in 2008-12-23)
	- http://packages.debian.org/source/sid/pimd (from Debian)

	troglobit pimd: This is the original USC pimd from
	http://netweb.usc.edu/pim/. In January 16, 2010 it was revived
	with the intention to collect patches floating around in
	Debian, Gentoo, Lintrack and other distribution repositories
	and to provide a central point of collaboration.
	- http://github.com/troglobit/pimd

	zpimd: zpimd is not dependent of zebra or any other routing daemon
	- ftp://robur.slu.se/pub/Routing/Zebra
	- http://sunsite2.icm.edu.pl/pub/unix/routing/zpimd

	mrd6: an IPv6 Multicast Router for Linux systems
	- http://fivebits.net/proj/mrd6/

	MBGP: Implementation of RFC 2858 for Quagga
	- git://git.coplanar.net/~balajig/quagga
	- http://www.gossamer-threads.com/lists/quagga/dev/18000

REFERENCES

	IANA Protocol Independent Multicast (PIM) Parameters
	http://www.iana.org/assignments/pim-parameters/pim-parameters.txt

	Address Family Numbers
	http://www.iana.org/assignments/address-family-numbers

                              -- END --