Record device-network relation in state file, fix zone hotplug events
[project/firewall3.git] / options.h
index 0ce9152..0a22cb6 100644 (file)
--- 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
 };
@@ -101,6 +100,8 @@ enum fw3_ipset_method
        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 +112,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 +147,7 @@ struct fw3_device
        bool any;
        bool invert;
        char name[32];
-       struct fw3_device *network;
+       char network[32];
 };
 
 struct fw3_address
@@ -489,6 +496,9 @@ 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);
 
+const char * fw3_address_to_string(struct fw3_address *address,
+                                   bool allow_invert);
+
 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);