#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/netfilter_ipv4/ip_tables.h>
#include <linux/slab.h>
#include <net/ip.h>
MODULE_LICENSE(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
#define FILTER_VALID_HOOKS …
static const struct xt_table packet_filter = …;
static struct nf_hook_ops *filter_ops __read_mostly;
static bool forward __read_mostly = …;
module_param(forward, bool, 0000);
static int iptable_filter_table_init(struct net *net)
{ … }
static int __net_init iptable_filter_net_init(struct net *net)
{ … }
static void __net_exit iptable_filter_net_pre_exit(struct net *net)
{ … }
static void __net_exit iptable_filter_net_exit(struct net *net)
{ … }
static struct pernet_operations iptable_filter_net_ops = …;
static int __init iptable_filter_init(void)
{ … }
static void __exit iptable_filter_fini(void)
{ … }
module_init(…) …;
module_exit(iptable_filter_fini);