diff options
author | Denis V. Lunev <den@openvz.org> | 2008-03-24 15:32:09 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-03-24 15:32:09 -0700 |
commit | 0be43f82c4f4c4a999b53cf794513f7f1a4ed7f3 (patch) | |
tree | 6ca7893fd93f4cfe960c022452309127f88485ed /net/netfilter | |
parent | 05cf89d40c85e622dac20e44713168767be5c520 (diff) | |
download | op-kernel-dev-0be43f82c4f4c4a999b53cf794513f7f1a4ed7f3.zip op-kernel-dev-0be43f82c4f4c4a999b53cf794513f7f1a4ed7f3.tar.gz |
[NETNS]: Process netfilter hooks in initial namespace only.
There were no packets in the namespace other than initial
previously. This will be changed in the neareast future. Netfilters
are not namespace aware and should be processed in the initial
namespace only for now.
Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/netfilter')
-rw-r--r-- | net/netfilter/core.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/net/netfilter/core.c b/net/netfilter/core.c index c4065b8..ec05684 100644 --- a/net/netfilter/core.c +++ b/net/netfilter/core.c @@ -165,6 +165,14 @@ int nf_hook_slow(int pf, unsigned int hook, struct sk_buff *skb, unsigned int verdict; int ret = 0; +#ifdef CONFIG_NET_NS + struct net *net; + + net = indev == NULL ? outdev->nd_net : indev->nd_net; + if (net != &init_net) + return 1; +#endif + /* We may already have this, but read-locks nest anyway */ rcu_read_lock(); |