From 165df18f7500b203f0ab845dedfc0fc8ba03c1e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20K=C4=99pie=C5=84?= Date: Thu, 23 Nov 2017 09:36:04 +0100 Subject: [PATCH] [master] Prevent bogus warning from being logged 4825. [bug] Prevent a bogus "error during managed-keys processing (no more)" warning from being logged. [RT #46645] --- CHANGES | 3 +++ lib/dns/zone.c | 11 +++++++++++ 2 files changed, 14 insertions(+) diff --git a/CHANGES b/CHANGES index 1809657c65..53c8068070 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +4825. [bug] Prevent a bogus "error during managed-keys processing + (no more)" warning from being logged. [RT #46645] + 4824. [port] Add iOS hooks to dig. [RT #42011] 4823. [test] Refactor reclimit system test to improve its diff --git a/lib/dns/zone.c b/lib/dns/zone.c index 708c119b56..1cb07feba1 100644 --- a/lib/dns/zone.c +++ b/lib/dns/zone.c @@ -9604,6 +9604,17 @@ keyfetch_done(isc_task_t *task, isc_event_t *event) { DNS_ZONE_SETFLAG(zone, DNS_ZONEFLG_LOADED); zone_needdump(zone, 30); + } else if (result == ISC_R_NOMORE) { + /* + * If "updatekey" was true for all keys found in the DNSKEY + * response and the previous update of those keys happened + * during the same second (only possible if a key refresh was + * externally triggered), it may happen that all relevant + * update_one_rr() calls will return ISC_R_SUCCESS, but + * diff.tuples will remain empty. Reset result to + * ISC_R_SUCCESS to prevent a bogus warning from being logged. + */ + result = ISC_R_SUCCESS; } failure: