From 8b30189bd616b8875a46f74552924520356999c5 Mon Sep 17 00:00:00 2001 From: Lubos Slovak <lubos.slovak@nic.cz> Date: Thu, 22 Aug 2013 15:40:56 +0200 Subject: [PATCH] Moved loading NSEC3PARAM back to zone adjusting. It should be called always when adjusting is called (i.e. always when new zone contents are created). --- src/knot/zone/zone-load.c | 10 ---------- src/libknot/dnssec/zone-nsec.h | 4 ++++ src/libknot/zone/zone-contents.c | 9 +++++++-- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/src/knot/zone/zone-load.c b/src/knot/zone/zone-load.c index 88000d5ec..fadcf84b4 100644 --- a/src/knot/zone/zone-load.c +++ b/src/knot/zone/zone-load.c @@ -681,16 +681,6 @@ knot_zone_t *knot_zload_load(zloader_t *loader) return NULL; } - ret = knot_zone_contents_load_nsec3param(c->current_zone); - if (ret != KNOT_EOK) { - log_zone_error("Failed to load NSEC3 params: %s\n", - knot_strerror(ret)); - rrset_list_delete(&c->node_rrsigs); - knot_zone_t *zone_to_free = c->current_zone->zone; - knot_zone_deep_free(&zone_to_free); - return NULL; - } - ret = knot_zone_connect_nsec_nodes(c->current_zone); if (ret != KNOT_EOK) { log_zone_error("Failed to connect regular and NSEC3 nodes: %s\n", diff --git a/src/libknot/dnssec/zone-nsec.h b/src/libknot/dnssec/zone-nsec.h index 3c2d548d7..355ac2cb9 100644 --- a/src/libknot/dnssec/zone-nsec.h +++ b/src/libknot/dnssec/zone-nsec.h @@ -53,6 +53,10 @@ int knot_zone_create_nsec_chain(const knot_zone_contents_t *zone, * \param zone Zone for which the operation is performed. * * \return Error code, KNOT_EOK if successful. + * + * \todo IMPORTANT: this is called always when zone adjusting is. IMHO it can + * be moved back into zone adjusting as before commit bb795a4. This only + * leads to confusion and duplication of code. */ int knot_zone_connect_nsec_nodes(knot_zone_contents_t *zone); diff --git a/src/libknot/zone/zone-contents.c b/src/libknot/zone/zone-contents.c index 1caa95ffb..f523de633 100644 --- a/src/libknot/zone/zone-contents.c +++ b/src/libknot/zone/zone-contents.c @@ -1474,6 +1474,13 @@ int knot_zone_contents_adjust(knot_zone_contents_t *zone, if (zone == NULL) return KNOT_EINVAL; + int result = knot_zone_contents_load_nsec3param(zone); + if (result != KNOT_EOK) { + log_zone_error("Failed to load NSEC3 params: %s\n", + knot_strerror(result)); + return result; + } + // adjusting parameters hattrie_t *lookup_tree = NULL; @@ -1487,8 +1494,6 @@ int knot_zone_contents_adjust(knot_zone_contents_t *zone, adjust_arg.zone = zone; adjust_arg.lookup_tree = lookup_tree; - int result; - // adjust NSEC3 nodes result = knot_zone_contents_adjust_nodes(zone->nsec3_nodes, &adjust_arg, -- GitLab