From 683716e261bd01d4ad077373dcf9ae900f474a38 Mon Sep 17 00:00:00 2001 From: Mobashshera Rasool Date: Thu, 24 Feb 2022 22:10:52 -0800 Subject: [PATCH] pimd: FRR drops IGMP packets for TOS value other than 0XC0 Currently the code is expecting the TOS value for received packet to be 0xC0 and hence it is discarding packets having TOS value other than 0xc0. We need to make sure that we are sending the packet with TOS 0xC0 and while receiving we can allow any TOS value. Let's follow Postel's law. Checked Cisco behavior as well. It also accepts all TOS values. Signed-off-by: Mobashshera Rasool (cherry picked from commit baee5b57fc08658bab0207ecdc5ef48d705de8fb) --- pimd/pim_igmp.c | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/pimd/pim_igmp.c b/pimd/pim_igmp.c index cf7613f4e4..abc31225a9 100644 --- a/pimd/pim_igmp.c +++ b/pimd/pim_igmp.c @@ -504,17 +504,6 @@ bool pim_igmp_verify_header(struct ip *ip_hdr, size_t len, size_t *hlen) } } - if ((msg_type == PIM_IGMP_V3_MEMBERSHIP_REPORT) - || ((msg_type == PIM_IGMP_MEMBERSHIP_QUERY) - && (igmp_msg_len >= IGMP_V3_SOURCES_OFFSET))) { - /* All IGMPv3 messages must be received with TOS set to 0xC0*/ - if (ip_hdr->ip_tos != IPTOS_PREC_INTERNETCONTROL) { - zlog_warn("Received IGMP Packet with invalid TOS %u", - ip_hdr->ip_tos); - return false; - } - } - return true; } -- 2.39.5