summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorÁlvaro Fernández Rojas2026-01-22 17:28:52 +0000
committerÁlvaro Fernández Rojas2026-03-07 14:22:25 +0000
commit3abb601ab77f5e914a3203e5d0c8ae7fb1579bae (patch)
tree9bf29a0ab868be3e2ed36ce01eafae35bc11c196
parente25491f27af33b77eca3ea8d93c083e57a02e918 (diff)
downloadomcproxy-master.tar.gz
mrib: receive_mrt: workaround for RTL8373 queriesHEADmaster
Fixes the following warning caused by RTL8373 sending IGMP queries without including the mandatory IPv4 Router Alert option: mrib_receive_mrt: ignoring invalid IGMP-message of type 11 from <ip> on <ifindex> According to RFC3376 9.1 [1]: - Hosts SHOULD ignore v2 or v3 Queries without the Router-Alert option. However, we can add an exception to be compatible with non-compliant switches. [1] https://datatracker.ietf.org/doc/html/rfc3376#section-9.1 Link: https://github.com/openwrt/omcproxy/pull/23 Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
-rw-r--r--src/mrib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mrib.c b/src/mrib.c
index bdb4493..4b84fa5 100644
--- a/src/mrib.c
+++ b/src/mrib.c
@@ -306,7 +306,7 @@ static void mrib_receive_mrt(struct uloop_fd *fd, __unused unsigned flags)
uint32_t *opts = (uint32_t*)&iph[1];
bool alert = (void*)&opts[1] <= (void*)igmp && *opts == ipv4_rtr_alert;
if (!alert && (igmp->type != IGMP_HOST_MEMBERSHIP_QUERY ||
- (size_t)len > sizeof(*igmp) || igmp->code > 0)) {
+ (size_t)len > sizeof(*igmp))) {
L_WARN("%s: ignoring invalid IGMP-message of type %x from %s on %d",
__FUNCTION__, igmp->type, addrbuf, ifindex);
continue;