X-Git-Url: http://git.archive.openwrt.org/?p=project%2Ffirewall3.git;a=blobdiff_plain;f=iptables.h;h=b97e5c58908d36b03a37ba29f2e10c777e0d96f7;hp=51c63d0f6210bf3e19d9aa3ee886754d3b66c82b;hb=cecf523b7bc055cb38ac66844f6ec039d88023ca;hpb=7b63363c22a62e14d05f41c418b98fe4b45db9c3 diff --git a/iptables.h b/iptables.h index 51c63d0..b97e5c5 100644 --- a/iptables.h +++ b/iptables.h @@ -23,6 +23,7 @@ #include #include +#include #include #include #include @@ -63,11 +64,18 @@ __ipt_module(SNAT) \ __ipt_module(TCPMSS) +#ifdef DISABLE_IPV6 +#undef __ipt_module +#define __ipt_module(x) \ + extern void libxt_##x##_init(void) __attribute__((weak)); \ + extern void libipt_##x##_init(void) __attribute__((weak)); +#else #undef __ipt_module #define __ipt_module(x) \ extern void libxt_##x##_init(void) __attribute__((weak)); \ extern void libipt_##x##_init(void) __attribute__((weak)); \ extern void libip6t_##x##_init(void) __attribute__((weak)); +#endif FW3_IPT_MODULES @@ -80,6 +88,9 @@ struct fw3_ipt_handle { enum fw3_family family; enum fw3_table table; void *handle; + + int libc; + void **libv; }; struct fw3_ipt_rule { @@ -115,6 +126,8 @@ void fw3_ipt_flush(struct fw3_ipt_handle *h); void fw3_ipt_commit(struct fw3_ipt_handle *h); +void fw3_ipt_close(struct fw3_ipt_handle *h); + struct fw3_ipt_rule *fw3_ipt_rule_new(struct fw3_ipt_handle *h); void fw3_ipt_rule_proto(struct fw3_ipt_rule *r, struct fw3_protocol *proto);