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); /*