1/* Shared library add-on to iptables for standard target support. */
2#include <stdio.h>
3#include <netdb.h>
4#include <string.h>
5#include <stdlib.h>
6#include <limits.h>
7#include <getopt.h>
8#include <iptables.h>
9
10/* Function which prints out usage message. */
11static void
12help(void)
13{
14	printf(
15"Standard v%s options:\n"
16"(If target is DROP, ACCEPT, RETURN or nothing)\n", IPTABLES_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
39/* Final check; don't care. */
40static void final_check(unsigned int flags)
41{
42}
43
44/* Saves the targinfo in parsable form to stdout. */
45static void
46save(const struct ipt_ip *ip, const struct ipt_entry_target *target)
47{
48}
49
50static
51struct iptables_target standard = {
52	.next		= NULL,
53	.name		= "standard",
54	.version	= IPTABLES_VERSION,
55	.size		= IPT_ALIGN(sizeof(int)),
56	.userspacesize	= IPT_ALIGN(sizeof(int)),
57	.help		= &help,
58	.init		= &init,
59	.parse		= &parse,
60	.final_check	= &final_check,
61	.print		= NULL,
62	.save		= &save,
63	.extra_opts	= opts
64};
65
66void _init(void)
67{
68	register_target(&standard);
69}
70