]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
- Fix crash if ratelimit taken into use with unbound-control
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Tue, 5 Jun 2018 07:06:19 +0000 (07:06 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Tue, 5 Jun 2018 07:06:19 +0000 (07:06 +0000)
  instead of with unbound.conf.

git-svn-id: file:///svn/unbound/trunk@4711 be551aaa-1e26-0410-a405-d3ace91eadb9

doc/Changelog
services/cache/infra.c

index 97678d6c6ce9b5b408aedd10f64ff1b8aa54a27c..f7ce2a1e6b41a1a3a065349d0ecb0568896d627d 100644 (file)
@@ -1,3 +1,7 @@
+5 June 2018: Wouter
+       - Fix crash if ratelimit taken into use with unbound-control
+         instead of with unbound.conf.
+
 4 June 2018: Wouter
        - Fix deadlock caused by incoming notify for auth-zone.
        - tag for 1.7.2rc1
index 734b7969e7a2eff15b8464eaed9ef5d81d118822..f4320306daa2df1b3b4b0c270669c01446762e89 100644 (file)
@@ -232,22 +232,20 @@ infra_create(struct config_file* cfg)
        infra->host_ttl = cfg->host_ttl;
        name_tree_init(&infra->domain_limits);
        infra_dp_ratelimit = cfg->ratelimit;
-       if(cfg->ratelimit != 0) {
-               infra->domain_rates = slabhash_create(cfg->ratelimit_slabs,
-                       INFRA_HOST_STARTSIZE, cfg->ratelimit_size,
-                       &rate_sizefunc, &rate_compfunc, &rate_delkeyfunc,
-                       &rate_deldatafunc, NULL);
-               if(!infra->domain_rates) {
-                       infra_delete(infra);
-                       return NULL;
-               }
-               /* insert config data into ratelimits */
-               if(!infra_ratelimit_cfg_insert(infra, cfg)) {
-                       infra_delete(infra);
-                       return NULL;
-               }
-               name_tree_init_parents(&infra->domain_limits);
+       infra->domain_rates = slabhash_create(cfg->ratelimit_slabs,
+               INFRA_HOST_STARTSIZE, cfg->ratelimit_size,
+               &rate_sizefunc, &rate_compfunc, &rate_delkeyfunc,
+               &rate_deldatafunc, NULL);
+       if(!infra->domain_rates) {
+               infra_delete(infra);
+               return NULL;
+       }
+       /* insert config data into ratelimits */
+       if(!infra_ratelimit_cfg_insert(infra, cfg)) {
+               infra_delete(infra);
+               return NULL;
        }
+       name_tree_init_parents(&infra->domain_limits);
        infra_ip_ratelimit = cfg->ip_ratelimit;
        infra->client_ip_rates = slabhash_create(cfg->ip_ratelimit_slabs,
            INFRA_HOST_STARTSIZE, cfg->ip_ratelimit_size, &ip_rate_sizefunc,