libipt_MIRROR.c revision 80fe35d6339b53a12ddaec41885613e4e37ed031
1/* Shared library add-on to iptables to add MIRROR target support. */
2#include <stdio.h>
3#include <string.h>
4#include <stdlib.h>
5#include <getopt.h>
6
7#include <iptables.h>
8#include <linux/netfilter_ipv4/ip_tables.h>
9
10/* Function which prints out usage message. */
11static void
12help(void)
13{
14	printf(
15"MIRROR target v%s takes no options\n",
16IPTABLES_VERSION);
17}
18
19static struct option opts[] = {
20	{ 0 }
21};
22
23/* Initialize the target. */
24static void
25init(struct ipt_entry_target *t, unsigned int *nfcache)
26{
27}
28
29/* Function which parses command options; returns true if it
30   ate an option */
31static int
32parse(int c, char **argv, int invert, unsigned int *flags,
33      const struct ipt_entry *entry,
34      struct ipt_entry_target **target)
35{
36	return 0;
37}
38
39static void
40final_check(unsigned int flags)
41{
42}
43
44static
45struct iptables_target mirror
46= { NULL,
47    "MIRROR",
48    IPTABLES_VERSION,
49    IPT_ALIGN(0),
50    IPT_ALIGN(0),
51    &help,
52    &init,
53    &parse,
54    &final_check,
55    NULL, /* print */
56    NULL, /* save */
57    opts
58};
59
60void _init(void)
61{
62	register_target(&mirror);
63}
64