IPv6: Delete redundant counter of IPSTATS_MIB_REASMFAILS
[safe/jmp/linux-2.6] / net / netfilter / xt_TRACE.c
index 26c5d08..fbb04b8 100644 (file)
@@ -5,49 +5,36 @@
 
 #include <linux/netfilter/x_tables.h>
 
+MODULE_DESCRIPTION("Xtables: packet flow tracing");
 MODULE_LICENSE("GPL");
 MODULE_ALIAS("ipt_TRACE");
 MODULE_ALIAS("ip6t_TRACE");
 
 static unsigned int
-target(struct sk_buff *skb,
-       const struct net_device *in,
-       const struct net_device *out,
-       unsigned int hooknum,
-       const struct xt_target *target,
-       const void *targinfo)
+trace_tg(struct sk_buff *skb, const struct xt_target_param *par)
 {
        skb->nf_trace = 1;
        return XT_CONTINUE;
 }
 
-static struct xt_target xt_trace_target[] __read_mostly = {
-       {
-               .name           = "TRACE",
-               .family         = AF_INET,
-               .target         = target,
-               .table          = "raw",
-               .me             = THIS_MODULE,
-       },
-       {
-               .name           = "TRACE",
-               .family         = AF_INET6,
-               .target         = target,
-               .table          = "raw",
-               .me             = THIS_MODULE,
-       },
+static struct xt_target trace_tg_reg __read_mostly = {
+       .name       = "TRACE",
+       .revision   = 0,
+       .family     = NFPROTO_UNSPEC,
+       .table      = "raw",
+       .target     = trace_tg,
+       .me         = THIS_MODULE,
 };
 
-static int __init xt_trace_init(void)
+static int __init trace_tg_init(void)
 {
-       return xt_register_targets(xt_trace_target,
-                                  ARRAY_SIZE(xt_trace_target));
+       return xt_register_target(&trace_tg_reg);
 }
 
-static void __exit xt_trace_fini(void)
+static void __exit trace_tg_exit(void)
 {
-       xt_unregister_targets(xt_trace_target, ARRAY_SIZE(xt_trace_target));
+       xt_unregister_target(&trace_tg_reg);
 }
 
-module_init(xt_trace_init);
-module_exit(xt_trace_fini);
+module_init(trace_tg_init);
+module_exit(trace_tg_exit);