zones: add interface/subnet bound LOG rules
[project/firewall3.git] / redirects.h
index 14f90bb..0d46bd2 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * firewall3 - 3rd OpenWrt UCI firewall implementation
  *
- *   Copyright (C) 2013 Jo-Philipp Wich <jow@openwrt.org>
+ *   Copyright (C) 2013 Jo-Philipp Wich <jo@mein.io>
  *
  * Permission to use, copy, modify, and/or distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above
 #include "options.h"
 #include "zones.h"
 #include "ipsets.h"
+#include "helpers.h"
 #include "ubus.h"
+#include "iptables.h"
 
 extern const struct fw3_option fw3_redirect_opts[];
 
-void fw3_load_redirects(struct fw3_state *state, struct uci_package *p);
-void fw3_print_redirects(struct fw3_state *state, enum fw3_family family,
-                         enum fw3_table table);
+void fw3_load_redirects(struct fw3_state *state, struct uci_package *p,
+                       struct blob_attr *a);
+void fw3_print_redirects(struct fw3_ipt_handle *handle,
+                         struct fw3_state *state);
 
-#define fw3_free_redirect(redir) \
-       fw3_free_object(redir, fw3_redirect_opts)
+static inline void fw3_free_redirect(struct fw3_redirect *redir)
+{
+       list_del(&redir->list);
+       fw3_free_object(redir, fw3_redirect_opts);
+}
 
 #endif