+5000. [bug] named_server_servestale() could leave the server in
+ exclusive mode if an error occured. [GL #441]
+
4999. [cleanup] Remove custom printf implementaion in lib/isc/print.c.
[GL #261]
dns_stale_answer_t staleanswersok = dns_stale_answer_conf;
isc_boolean_t wantstatus = ISC_FALSE;
isc_result_t result = ISC_R_SUCCESS;
+ isc_boolean_t exclusive = ISC_FALSE;
/* Skip the command name. */
ptr = next_token(lex, text);
result = isc_task_beginexclusive(server->task);
RUNTIME_CHECK(result == ISC_R_SUCCESS);
+ exclusive = ISC_TRUE;
for (view = ISC_LIST_HEAD(server->viewlist);
view != NULL;
}
found = ISC_TRUE;
}
- isc_task_endexclusive(named_g_server->task);
if (!found)
result = ISC_R_NOTFOUND;
cleanup:
+ if (exclusive)
+ isc_task_endexclusive(named_g_server->task);
+
if (isc_buffer_usedlength(*text) > 0)
(void) putnull(text);