aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/services/igmpproxy/patches/020-Silence-downstream-interface-igmp-messages.patch
diff options
context:
space:
mode:
authorJames <>2015-11-04 11:49:21 +0000
committerJames <>2015-11-04 11:49:21 +0000
commit716ca530e1c4515d8683c9d5be3d56b301758b66 (patch)
tree700eb5bcc1a462a5f21dcec15ce7c97ecfefa772 /package/network/services/igmpproxy/patches/020-Silence-downstream-interface-igmp-messages.patch
downloadtrunk-47381-master.tar.gz
trunk-47381-master.tar.bz2
trunk-47381-master.zip
trunk-47381HEADmaster
Diffstat (limited to 'package/network/services/igmpproxy/patches/020-Silence-downstream-interface-igmp-messages.patch')
-rw-r--r--package/network/services/igmpproxy/patches/020-Silence-downstream-interface-igmp-messages.patch19
1 files changed, 19 insertions, 0 deletions
diff --git a/package/network/services/igmpproxy/patches/020-Silence-downstream-interface-igmp-messages.patch b/package/network/services/igmpproxy/patches/020-Silence-downstream-interface-igmp-messages.patch
new file mode 100644
index 0000000..ccd000c
--- /dev/null
+++ b/package/network/services/igmpproxy/patches/020-Silence-downstream-interface-igmp-messages.patch
@@ -0,0 +1,19 @@
+--- 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;
+ }
+