mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-12 12:53:26 +00:00
Revert "pimd: Prevent igmp packet loopback."
This reverts commit 5bbcd1f0fd
.
This commit badly breaks local 'ip igmp join XXX YYY' commands.
Revert this and fix the issue a slightly different way
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
cdb805bc9e
commit
e20883e6bf
@ -717,19 +717,6 @@ int pim_igmp_packet(struct igmp_sock *igmp, char *buf, size_t len)
|
|||||||
from_str, to_str, igmp->interface->name, len, ip_hlen, ip_hdr->ip_p);
|
from_str, to_str, igmp->interface->name, len, ip_hlen, ip_hdr->ip_p);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* When pim starts up we are joining the 224.0.0.13 and 224.0.0.22 multicast
|
|
||||||
* groups. This is causing the kernel to create a igmp packet that pim
|
|
||||||
* turns around and receives. Therefor if we are the originator
|
|
||||||
* of the igmp packet then we can probably just ignore it.
|
|
||||||
*/
|
|
||||||
if (ip_hdr->ip_src.s_addr == igmp->ifaddr.s_addr)
|
|
||||||
{
|
|
||||||
if (PIM_DEBUG_IGMP_PACKETS)
|
|
||||||
zlog_debug ("Received IGMP packet from myself, ignoring");
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (ip_hdr->ip_p != PIM_IP_PROTO_IGMP) {
|
if (ip_hdr->ip_p != PIM_IP_PROTO_IGMP) {
|
||||||
zlog_warn("IP packet protocol=%d is not IGMP=%d",
|
zlog_warn("IP packet protocol=%d is not IGMP=%d",
|
||||||
ip_hdr->ip_p, PIM_IP_PROTO_IGMP);
|
ip_hdr->ip_p, PIM_IP_PROTO_IGMP);
|
||||||
|
Loading…
Reference in New Issue
Block a user