mirror_frr/pimd
Donatas Abraitis f7d8698313
Merge pull request #9697 from SaiGomathiN/igmp-sources
pimd: json support added
2022-02-11 07:53:02 +02: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 pimd: merge pimd as of 2015-01-19 2016-05-25 20:38:32 -04:00
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 pimd: move iface lib initialization to a proper place 2022-01-24 20:14:18 +03:00
pim_addr.c pimd: move, rename and deploy pim_addr_is_any() 2022-01-17 14:03:26 +01:00
pim_addr.h pimd: add more dual-family address bits 2022-01-17 14:19:11 +01:00
pim_assert.c pimd: replace pim_inet4_dump with %pPAs 2022-01-17 14:10:57 +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 pimd: remove redundant header include 2022-01-18 04:35:37 -08:00
pim_bfd.h pimd: rework BFD integration 2021-04-23 09:28:57 -03:00
pim_br.c pimd: deploy pim_sgaddr_* helpers 2022-01-17 14:08:58 +01:00
pim_br.h pimd: prefix_sg => pim_sgaddr 2022-01-12 18:24:25 +01:00
pim_bsm.c Merge pull request #10292 from opensourcerouting/pim6-addr-aux 2022-02-08 13:09:08 -05:00
pim_bsm.h pimd: move BSM clear into BSM code 2021-11-17 11:17:44 +01:00
pim_cmd.c Merge pull request #9697 from SaiGomathiN/igmp-sources 2022-02-11 07:53:02 +02: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 Merge pull request #10292 from opensourcerouting/pim6-addr-aux 2022-02-08 13:09:08 -05:00
pim_iface.h pimd: move iface lib initialization to a proper place 2022-01-24 20:14:18 +03:00
pim_ifchannel.c pimd: replace pim_inet4_dump with %pPAs 2022-01-17 14:10:57 +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: add PIMADDR_ANY & tackle assignments 2022-01-17 14:09:01 +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: Querier to non-querier transistion to be ignored in a case 2022-02-07 01:46:19 -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: remove PIM_INADDR_IS[NOT]_ANY macros 2022-01-17 14:11:08 +01: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: remove PIM_INADDR_IS[NOT]_ANY macros 2022-01-17 14:11:08 +01:00
pim_join.h *: reindent 2017-07-17 14:04:07 +02:00
pim_jp_agg.c pimd: add PIMADDR_ANY & tackle assignments 2022-01-17 14:09:01 +01: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: remove PIM_INADDR_IS[NOT]_ANY macros 2022-01-17 14:11:08 +01: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 pimd: move iface lib initialization to a proper place 2022-01-24 20:14:18 +03: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: move, rename and deploy pim_addr_is_any() 2022-01-17 14:03:26 +01:00
pim_mlag.h *: convert zclient callbacks to table 2021-10-20 13:28:46 +02:00
pim_mroute.c pimd: add PIMADDR_ANY & tackle assignments 2022-01-17 14:09:01 +01:00
pim_mroute.h pimd: de-circularize includes 2021-08-27 10:41:23 +02:00
pim_msdp_packet.c pimd: remove pim_str_sg_dump() 2022-01-17 14:02:18 +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 Merge pull request #10292 from opensourcerouting/pim6-addr-aux 2022-02-08 13:09:08 -05:00
pim_msdp.h pim6d: drop off MSDP code 2022-01-14 20:32:41 +01:00
pim_msg.c pimd: move, rename and deploy pim_addr_is_any() 2022-01-17 14:03:26 +01: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 Merge pull request #10292 from opensourcerouting/pim6-addr-aux 2022-02-08 13:09:08 -05:00
pim_nht.h pimd: add back blocking RPF for BSM 2021-11-17 11:17:44 +01:00
pim_oil.c pimd: move, rename and deploy pim_addr_is_any() 2022-01-17 14:03:26 +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: fix %pI4 that needs to be %pPA 2022-01-17 14:11:02 +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: move, rename and deploy pim_addr_is_any() 2022-01-17 14:03:26 +01:00
pim_rp.h pimd: de-circularize includes 2021-08-27 10:41:23 +02:00
pim_rpf.c pimd: move, rename and deploy pim_addr_is_any() 2022-01-17 14:03:26 +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: remove pim_str_sg_dump() 2022-01-17 14:02:18 +01:00
pim_str.h pimd: remove pim_addr_copy 2022-01-17 14:08:32 +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: add PIMADDR_ANY & tackle assignments 2022-01-17 14:09:01 +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 Merge pull request #10292 from opensourcerouting/pim6-addr-aux 2022-02-08 13:09:08 -05: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: deploy pim_sgaddr_* helpers 2022-01-17 14:08:58 +01:00
pim_vxlan.h pimd: move, rename and deploy pim_addr_is_any() 2022-01-17 14:03:26 +01:00
pim_zebra.c pimd: replace pim_inet4_dump with %pPAs 2022-01-17 14:10:57 +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: remove pim_str_sg_dump() 2022-01-17 14:02:18 +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: remove PIM_INADDR_IS[NOT]_ANY macros 2022-01-17 14:11:08 +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 pimd: merge pimd as of 2015-01-19 2016-05-25 20:38:32 -04:00

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 --