K2.6 patches and update.
[tomato.git] / release / src / router / iptables / extensions / libipt_MACSAVE.c
bloba98771352e447d379efa4e6736a30a6f59aa7b37
1 /*
3 MACSAVE target (experimental)
4 Copyright (C) 2006 Jonathan Zarate
6 Licensed under GNU GPL v2 or later.
8 */
9 #include <stdio.h>
10 #include <string.h>
11 #include <stdlib.h>
12 #include <getopt.h>
14 #include <iptables.h>
15 #include <linux/netfilter_ipv4/ipt_MACSAVE.h>
17 static void help(void)
19 printf(
20 "MACSAVE target (experimental) v0.01\n"
21 "Copyright (C) 2006 Jonathan Zarate\n"
22 "Options: none\n");
25 static void init(struct ipt_entry_target *t, unsigned int *nfcache)
29 static struct option opts[] = { { 0 } };
31 static int parse(int c, char **argv, int invert, unsigned int *flags,
32 const struct ipt_entry *entry, struct ipt_entry_target **target)
34 return 0;
37 static void final_check(unsigned int flags)
41 static struct iptables_target macsave_target
42 = { .next = NULL,
43 .name = "MACSAVE",
44 .version = IPTABLES_VERSION,
45 .size = IPT_ALIGN(sizeof(struct ipt_MACSAVE_target_info)),
46 .userspacesize = IPT_ALIGN(sizeof(struct ipt_MACSAVE_target_info)),
47 .help = &help,
48 .init = &init,
49 .parse = &parse,
50 .final_check = &final_check,
51 .print = NULL,
52 .save = NULL,
53 .extra_opts = opts
56 void _init(void)
58 register_target(&macsave_target);