diff options
author | laforge <laforge> | 2002-12-05 20:50:09 +0000 |
---|---|---|
committer | laforge <laforge> | 2002-12-05 20:50:09 +0000 |
commit | 9ce4f241b0e77206c65786a9c65cc42e09fea04e (patch) | |
tree | 4dc1ca5d02214333065261beb9ba500272b25b60 /extensions/libipt_TARPIT.c | |
parent | d9a6bdef921879b1ad833ca96e26d994b0f3771b (diff) |
add TARPIT target (Aaron Hopkins)
Diffstat (limited to 'extensions/libipt_TARPIT.c')
-rw-r--r-- | extensions/libipt_TARPIT.c | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/extensions/libipt_TARPIT.c b/extensions/libipt_TARPIT.c new file mode 100644 index 0000000..643ce61 --- /dev/null +++ b/extensions/libipt_TARPIT.c @@ -0,0 +1,67 @@ +/* Shared library add-on to iptables for TARPIT support */ +#include <stdio.h> +#include <getopt.h> +#include <iptables.h> + +static void +help(void) +{ + fputs( +"TARPIT takes no options\n" +"\n", stdout); +} + +static struct option opts[] = { + { 0 } +}; + +static void +init(struct ipt_entry_target *t, unsigned int *nfcache) +{ + /* Can't cache this */ + *nfcache |= NFC_UNKNOWN; +} + +static int +parse(int c, char **argv, int invert, unsigned int *flags, + const struct ipt_entry *entry, + struct ipt_entry_target **target) +{ + return 0; +} + +static void final_check(unsigned int flags) +{ +} + +static void +print(const struct ipt_ip *ip, + const struct ipt_entry_target *target, + int numeric) +{ +} + +static void save(const struct ipt_ip *ip, const struct ipt_entry_target *target) +{ +} + +static +struct iptables_target tarpit += { NULL, + "TARPIT", + IPTABLES_VERSION, + IPT_ALIGN(0), + IPT_ALIGN(0), + &help, + &init, + &parse, + &final_check, + &print, + &save, + opts +}; + +void _init(void) +{ + register_target(&tarpit); +} |