Replace fw3_free_zone() with the generic implementation
authorJo-Philipp Wich <jow@openwrt.org>
Sun, 26 May 2013 15:13:49 +0000 (17:13 +0200)
committerJo-Philipp Wich <jow@openwrt.org>
Sun, 26 May 2013 15:13:49 +0000 (17:13 +0200)
zones.c
zones.h

diff --git a/zones.c b/zones.c
index dbf682f482b763b6e2dbaacf6e5bb5ba2c3fc590..4de6625b1b318d9a299ad32c672f98adaad9a204 100644 (file)
--- a/zones.c
+++ b/zones.c
@@ -687,23 +687,3 @@ fw3_resolve_zone_addresses(struct fw3_zone *zone)
 
        return all;
 }
-
-void
-fw3_free_zone(struct fw3_zone *zone)
-{
-       struct fw3_device *dev, *tmp;
-
-       list_for_each_entry_safe(dev, tmp, &zone->devices, list)
-       {
-               list_del(&dev->list);
-               free(dev);
-       }
-
-       list_for_each_entry_safe(dev, tmp, &zone->networks, list)
-       {
-               list_del(&dev->list);
-               free(dev);
-       }
-
-       fw3_free_object(zone, fw3_zone_opts);
-}
diff --git a/zones.h b/zones.h
index b438870fc0cbc38b8e7cd0814a7d1578bb79dd6c..cf5ce3c7ee1da2fd81ee4bc4aec1e07c27c3bd5e 100644 (file)
--- a/zones.h
+++ b/zones.h
@@ -46,7 +46,8 @@ struct fw3_zone * fw3_lookup_zone(struct fw3_state *state, const char *name);
 
 struct list_head * fw3_resolve_zone_addresses(struct fw3_zone *zone);
 
-void fw3_free_zone(struct fw3_zone *zone);
+#define fw3_free_zone(zone) \
+       fw3_free_object(zone, fw3_zone_opts)
 
 #define fw3_to_src_target(t) \
        (FW3_FLAG_SRC_ACCEPT - FW3_FLAG_ACCEPT + t)