From: Patrick McHardy Date: Wed, 5 Dec 2007 09:26:18 +0000 (-0800) Subject: [NETFILTER]: ip6_queue: resync dev-index based flushing X-Git-Tag: v2.6.25-rc1~1162^2~1237 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7a6c6653b3a977087ec64d76817c7ee6e1df5b60;p=linux-2.6 [NETFILTER]: ip6_queue: resync dev-index based flushing Resync dev_cmp to take bridge devices into account. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller --- diff --git a/net/ipv6/netfilter/ip6_queue.c b/net/ipv6/netfilter/ip6_queue.c index 7d0780d02d..9c50cb19b3 100644 --- a/net/ipv6/netfilter/ip6_queue.c +++ b/net/ipv6/netfilter/ip6_queue.c @@ -418,7 +418,16 @@ dev_cmp(struct ipq_queue_entry *entry, unsigned long ifindex) if (entry->info->outdev) if (entry->info->outdev->ifindex == ifindex) return 1; - +#ifdef CONFIG_BRIDGE_NETFILTER + if (entry->skb->nf_bridge) { + if (entry->skb->nf_bridge->physindev && + entry->skb->nf_bridge->physindev->ifindex == ifindex) + return 1; + if (entry->skb->nf_bridge->physoutdev && + entry->skb->nf_bridge->physoutdev->ifindex == ifindex) + return 1; + } +#endif return 0; }