From d88ba937124b2a4f8a074fc2aef9caf2022308b4 Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Wed, 3 Feb 2016 14:59:19 +1100 Subject: [PATCH] 4313. [bug] Handle ns_client_replace failures in test mode. [RT #41190] --- CHANGES | 3 +++ bin/named/query.c | 12 ++++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/CHANGES b/CHANGES index 79aacf233d..5de2346202 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +4313. [bug] Handle ns_client_replace failures in test mode. + [RT #41190] + 4312. [bug] dig's unknown dns and edns flags (MBZ value) logging was not consistent. [RT #41600] diff --git a/bin/named/query.c b/bin/named/query.c index 1ca95c9cfe..66263bf608 100644 --- a/bin/named/query.c +++ b/bin/named/query.c @@ -8902,8 +8902,16 @@ ns_query_start(ns_client_t *client) { /* * Test only. */ - if (ns_g_clienttest && !TCP(client)) - RUNTIME_CHECK(ns_client_replace(client) == ISC_R_SUCCESS); + if (ns_g_clienttest && !TCP(client)) { + result = ns_client_replace(client); + if (result == ISC_R_SHUTTINGDOWN) { + ns_client_next(client, result); + return; + } else if (result != ISC_R_SUCCESS) { + query_error(client, result, __LINE__); + return; + } + } /* * Ensure that appropriate cleanups occur.