netfilter: don't pull include/linux/netfilter.h from netns headers
authorPablo Neira Ayuso <pablo@netfilter.org>
Wed, 17 Jun 2015 15:28:27 +0000 (10:28 -0500)
committerPablo Neira Ayuso <pablo@netfilter.org>
Thu, 18 Jun 2015 19:14:31 +0000 (21:14 +0200)
commita263653ed798216c0069922d7b5237ca49436007
treedc6cf8cc8519a3aa4bbb988699bc75042470a793
parent10c04a8e715cca824f96bcbf4af07f5a40985357
netfilter: don't pull include/linux/netfilter.h from netns headers

This pulls the full hook netfilter definitions from all those that include
net_namespace.h.

Instead let's just include the bare minimum required in the new
linux/netfilter_defs.h file, and use it from the netfilter netns header files.

I also needed to include in.h and in6.h from linux/netfilter.h otherwise we hit
this compilation error:

In file included from include/linux/netfilter_defs.h:4:0,
                 from include/net/netns/netfilter.h:4,
                 from include/net/net_namespace.h:22,
                 from include/linux/netdevice.h:43,
                 from net/netfilter/nfnetlink_queue_core.c:23:
include/uapi/linux/netfilter.h:76:17: error: field ‘in’ has incomplete type struct in_addr in;

And also explicit include linux/netfilter.h in several spots.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
include/linux/netfilter.h
include/linux/netfilter_defs.h [new file with mode: 0644]
include/net/netns/netfilter.h
include/net/netns/x_tables.h
include/uapi/linux/netfilter.h
net/ipv6/output_core.c