X-Git-Url: http://git.archive.openwrt.org/?p=project%2Ffirewall3.git;a=blobdiff_plain;f=options.h;h=aeecef0d547ef04ac4d3b5b5eb3ff873a05d0b75;hp=0ce9152e630be290aa89eea0b6ce4b0101834943;hb=cecf523b7bc055cb38ac66844f6ec039d88023ca;hpb=ebe3dbe3e8063ed63011bf505fc371d6b0f88aad diff --git a/options.h b/options.h index 0ce9152..aeecef0 100644 --- a/options.h +++ b/options.h @@ -79,7 +79,6 @@ enum fw3_flag FW3_FLAG_MTU_FIX = 18, FW3_FLAG_DROP_INVALID = 19, FW3_FLAG_HOTPLUG = 20, - FW3_FLAG_DELETED = 21, __FW3_FLAG_MAX }; @@ -93,14 +92,21 @@ enum fw3_limit_unit FW3_LIMIT_UNIT_MINUTE = 1, FW3_LIMIT_UNIT_HOUR = 2, FW3_LIMIT_UNIT_DAY = 3, + + __FW3_LIMIT_UNIT_MAX }; +extern const char *fw3_limit_units[__FW3_LIMIT_UNIT_MAX]; + + enum fw3_ipset_method { FW3_IPSET_METHOD_UNSPEC = 0, FW3_IPSET_METHOD_BITMAP = 1, FW3_IPSET_METHOD_HASH = 2, FW3_IPSET_METHOD_LIST = 3, + + __FW3_IPSET_METHOD_MAX }; enum fw3_ipset_type @@ -111,8 +117,14 @@ enum fw3_ipset_type FW3_IPSET_TYPE_MAC = 3, FW3_IPSET_TYPE_NET = 4, FW3_IPSET_TYPE_SET = 5, + + __FW3_IPSET_TYPE_MAX }; +extern const char *fw3_ipset_method_names[__FW3_IPSET_METHOD_MAX]; +extern const char *fw3_ipset_type_names[__FW3_IPSET_TYPE_MAX]; + + enum fw3_include_type { FW3_INC_TYPE_SCRIPT = 0, @@ -140,7 +152,7 @@ struct fw3_device bool any; bool invert; char name[32]; - struct fw3_device *network; + char network[32]; }; struct fw3_address @@ -150,6 +162,7 @@ struct fw3_address bool set; bool range; bool invert; + bool resolved; enum fw3_family family; int mask; union { @@ -444,6 +457,13 @@ struct fw3_state bool statefile; }; +struct fw3_chain_spec { + int family; + int table; + int flag; + const char *format; +}; + struct fw3_option { @@ -489,20 +509,7 @@ bool fw3_parse_mark(void *ptr, const char *val, bool is_list); void fw3_parse_options(void *s, const struct fw3_option *opts, struct uci_section *section); -void fw3_format_in_out(struct fw3_device *in, struct fw3_device *out); -void fw3_format_src_dest(struct fw3_address *src, struct fw3_address *dest); -void fw3_format_sport_dport(struct fw3_port *sp, struct fw3_port *dp); -void fw3_format_mac(struct fw3_mac *mac); -void fw3_format_protocol(struct fw3_protocol *proto, enum fw3_family family); -void fw3_format_icmptype(struct fw3_icmptype *icmp, enum fw3_family family); -void fw3_format_limit(struct fw3_limit *limit); -void fw3_format_ipset(struct fw3_ipset *ipset, bool invert); -void fw3_format_time(struct fw3_time *time); -void fw3_format_mark(struct fw3_mark *mark); - -void __fw3_format_comment(const char *comment, ...); -#define fw3_format_comment(...) __fw3_format_comment(__VA_ARGS__, NULL) - -void fw3_format_extra(const char *extra); +const char * fw3_address_to_string(struct fw3_address *address, + bool allow_invert); #endif