Commit 48af77ab authored by Libor Peltan's avatar Libor Peltan

adjusting incremental updates: direct nsec3 pointers only for changed nodes

parent b0e79dff
......@@ -613,7 +613,13 @@ static int commit_incremental(conf_t *conf, zone_update_t *update)
}
}
ret = zone_adjust_full(new_contents);
ret = zone_adjust_contents(new_contents, adjust_cb_flags, adjust_cb_nsec3_flags);
if (ret == KNOT_EOK) {
ret = zone_adjust_update(update, adjust_cb_point_to_nsec3, NULL);
}
if (ret == KNOT_EOK) {
ret = zone_adjust_contents(new_contents, adjust_cb_nsec3wc_and_additionals, NULL);
}
if (ret != KNOT_EOK) {
zone_update_clear(update);
return ret;
......
......@@ -234,6 +234,15 @@ int adjust_cb_nsec3_and_additionals(zone_node_t *node, const zone_contents_t *zo
return ret;
}
int adjust_cb_nsec3wc_and_additionals(zone_node_t *node, const zone_contents_t *zone)
{
int ret = adjust_cb_wildcard_nsec3(node, zone);
if (ret == KNOT_EOK) {
ret = adjust_cb_additionals(node, zone);
}
return ret;
}
int adjust_cb_void(zone_node_t *node, const zone_contents_t *zone)
{
UNUSED(node);
......
......@@ -54,6 +54,9 @@ int adjust_cb_flags_and_nsec3(zone_node_t *node, const zone_contents_t *zone);
// adjust_cb_point_to_nsec3, adjust_cb_wildcard_nsec3 and adjust_cb_additionals at once
int adjust_cb_nsec3_and_additionals(zone_node_t *node, const zone_contents_t *zone);
// adjust_cb_wildcard_nsec3 and adjust_cb_additionals at once
int adjust_cb_nsec3wc_and_additionals(zone_node_t *node, const zone_contents_t *zone);
// dummy callback, just make prev pointers adjusting and zone size measuring work
int adjust_cb_void(zone_node_t *node, const zone_contents_t *zone);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment