Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > 27922b4260f65d317aabda37e42bbbff > files > 2788

kernel-2.6.18-238.el5.src.rpm

From: Neil Horman <nhorman@redhat.com>
Date: Tue, 18 Dec 2007 13:50:10 -0500
Subject: [net] ipv6: ip6_mc_input: sense of promiscuous test
Message-id: 20071218185010.GA24173@hmsendeavour.rdu.redhat.com
O-Subject: [RHEL 5.2 PATCH] Correct sense of of the promiscuous test in ip6_mc_input
Bugzilla: 390071

Hey-
	Backport of upstream commit ae7bf20a6316272acfcaef5d265b18aaa54b41e4,
which fixes the sense of the promiscous test in ip6_mc_input.  Tis correctly
prevents multicast packets from sources that no sockets are participating in
from getting delivered to upper layers.  Satisfies bz 390071.

Regards
Neil

Acked-by: "David S. Miller" <davem@redhat.com>

diff --git a/net/ipv6/ip6_input.c b/net/ipv6/ip6_input.c
index 25c2a9e..8a299d7 100644
--- a/net/ipv6/ip6_input.c
+++ b/net/ipv6/ip6_input.c
@@ -222,7 +222,7 @@ int ip6_mc_input(struct sk_buff *skb)
 	IP6_INC_STATS_BH(IPSTATS_MIB_INMCASTPKTS);
 
 	hdr = skb->nh.ipv6h;
-	deliver = likely(!(skb->dev->flags & (IFF_PROMISC|IFF_ALLMULTI))) ||
+	deliver = unlikely(skb->dev->flags & (IFF_PROMISC|IFF_ALLMULTI)) ||
 	    ipv6_chk_mcast_addr(skb->dev, &hdr->daddr, NULL);
 
 	/*