Skip to content
Snippets Groups Projects
Commit 095f7e93 authored by solidcc2's avatar solidcc2 Committed by Daniel Salzman
Browse files

fix: prevent coredump in zone-reload by introducing semaphore protection...

when generating new zone_contents_t for newzone

fixes #939
parent a7ebc196
No related branches found
No related tags found
No related merge requests found
......@@ -646,6 +646,7 @@ int zone_reload_modules(conf_t *conf, server_t *server, const knot_dname_t *zone
if (newzone == NULL) {
return KNOT_ENOMEM;
}
knot_sem_wait(&newzone->cow_lock);
conf_activate_modules(conf, server, newzone->name, &newzone->query_modules,
&newzone->query_plan);
......@@ -657,6 +658,7 @@ int zone_reload_modules(conf_t *conf, server_t *server, const knot_dname_t *zone
assert(newzone->contents == oldzone->contents);
oldzone->contents = NULL; // contents have been re-used by newzone
knot_sem_post(&newzone->cow_lock);
knot_sem_post(&oldzone->cow_lock);
zone_free(&oldzone);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment