![Pablo Neira Ayuso](/assets/img/avatar_default.png)
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>
21 lines
468 B
C
21 lines
468 B
C
#ifndef __NETNS_X_TABLES_H
|
|
#define __NETNS_X_TABLES_H
|
|
|
|
#include <linux/list.h>
|
|
#include <linux/netfilter_defs.h>
|
|
|
|
struct ebt_table;
|
|
|
|
struct netns_xt {
|
|
struct list_head tables[NFPROTO_NUMPROTO];
|
|
bool notrack_deprecated_warning;
|
|
bool clusterip_deprecated_warning;
|
|
#if defined(CONFIG_BRIDGE_NF_EBTABLES) || \
|
|
defined(CONFIG_BRIDGE_NF_EBTABLES_MODULE)
|
|
struct ebt_table *broute_table;
|
|
struct ebt_table *frame_filter;
|
|
struct ebt_table *frame_nat;
|
|
#endif
|
|
};
|
|
#endif
|