openwrt/package/network/services/igmpproxy/patches/020-Silence-downstream-interface-igmp-messages.patch

20 lines
931 B
Diff
Raw Normal View History

--- a/src/igmp.c
+++ b/src/igmp.c
@@ -139,8 +139,14 @@
return;
}
else if(!isAdressValidForIf(checkVIF, src)) {
- my_log(LOG_WARNING, 0, "The source address %s for group %s, is not in any valid net for upstream VIF.",
- inetFmt(src, s1), inetFmt(dst, s2));
+ struct IfDesc *downVIF = getIfByAddress(src);
+ if (downVIF && downVIF->state & IF_STATE_DOWNSTREAM) {
+ my_log(LOG_NOTICE, 0, "The source address %s for group %s is from downstream VIF. Ignoring.",
+ inetFmt(src, s1), inetFmt(dst, s2));
+ } else {
+ my_log(LOG_WARNING, 0, "The source address %s for group %s, is not in any valid net for upstream VIF.",
+ inetFmt(src, s1), inetFmt(dst, s2));
+ }
return;
}