]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
- Fix for more maintainable code in localzone.
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Mon, 19 Feb 2018 13:21:57 +0000 (13:21 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Mon, 19 Feb 2018 13:21:57 +0000 (13:21 +0000)
git-svn-id: file:///svn/unbound/trunk@4542 be551aaa-1e26-0410-a405-d3ace91eadb9

doc/Changelog
services/localzone.c

index 4f88187c1b38f07bf806df3f6fabb5e510e2d3d8..92ecbd17ca84c2f97d2166fa1df65f8a5f528c62 100644 (file)
@@ -3,6 +3,7 @@
          wrong RFC.
        - Fix #3494: local-zone noview can be used to break out of the view
          to the global local zone contents, for queries for that zone.
+       - Fix for more maintainable code in localzone.
 
 16 February 2018: Wouter
        - Fixes for clang static analyzer, the missing ; in
index af432ab5b1037d4984360838048b4528d965ea1d..dad1ad47e5aca6d328707f4a936128033cfcee49 100644 (file)
@@ -1132,61 +1132,11 @@ void local_zones_print(struct local_zones* zones)
        lock_rw_rdlock(&zones->lock);
        log_info("number of auth zones %u", (unsigned)zones->ztree.count);
        RBTREE_FOR(z, struct local_zone*, &zones->ztree) {
+               char buf[64];
                lock_rw_rdlock(&z->lock);
-               switch(z->type) {
-               case local_zone_deny:
-                       log_nametypeclass(0, "deny zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_refuse:
-                       log_nametypeclass(0, "refuse zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_redirect:
-                       log_nametypeclass(0, "redirect zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_transparent:
-                       log_nametypeclass(0, "transparent zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_typetransparent:
-                       log_nametypeclass(0, "typetransparent zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_static:
-                       log_nametypeclass(0, "static zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_inform:
-                       log_nametypeclass(0, "inform zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_inform_deny:
-                       log_nametypeclass(0, "inform_deny zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_always_transparent:
-                       log_nametypeclass(0, "always_transparent zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_always_refuse:
-                       log_nametypeclass(0, "always_refuse zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_always_nxdomain:
-                       log_nametypeclass(0, "always_nxdomain zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               case local_zone_noview:
-                       log_nametypeclass(0, "noview zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               default:
-                       log_nametypeclass(0, "badtyped zone", 
-                               z->name, 0, z->dclass);
-                       break;
-               }
+               snprintf(buf, sizeof(buf), "%s zone",
+                       local_zone_type2str(z->type));
+               log_nametypeclass(0, buf, z->name, 0, z->dclass);
                local_zone_out(z);
                lock_rw_unlock(&z->lock);
        }